Fix geocoder testcase
$ go test
--- FAIL: TestGeocode (0.66 seconds)
	geocoder_test.go:21: Expected 47.606400, -122.330803 ~ Received 47.603561, -122.329437
--- FAIL: TestReverseGeoCode (0.51 seconds)
	geocoder_test.go:30: Expected Seattle WA 98104 ~ Received Seattle WA 98104-1119
FAIL
exit status 1
FAIL	github.com/stanim/geocoder	1.246s
- Use json.Decoder instead of json.Unmarshall since json is read from a stream
  See: https://stackoverflow.com/a/21198571 and https://stackoverflow.com/a/15685432

- refactor GeoAddress into ReverseProviderResult to avoid duplicated code.