Explain the use of Go's function currying and partial application for creating and using partially applied functions in Go programs?