Fix for issue #384: make geocoder response respect content-type header

Patch for my ticket #384, to make the raw HTTP response body use the encoding specified in the content-type header.  If no content-type is provided, or the encoding fails, the code is a no-op.

This fixes the broken responses that I've observed (e.g. google's response for "taipei, taiwan", language 'en')