Fix body close and allow GAE to geocode

The response body should be closed after checking if the err is non
nil.

Adds a property to the Request type to allow the caller to specify
their own HTTPClient. Note: this overrides any transport specified
by the caller.