Added handling case for ZERO_RESULTS from GoogleV3 with test case

Without this, geocode() would raise `GeocoderQueryError('Unknown error.')`, which is highly confusing, as opposed to simply returning `None`, which was the old behavior of this. Includes a test case.