refactor GoogleGeocoder to a class