Add support for a Google Maps API key

From https://developers.google.com/maps/documentation/geocoding/#api_key:
All Geocoding API applications should use an API key. Including a key in your request:
- Allows you to monitor your application's API usage in the APIs Console.
- Enables per-key instead of per-IP-address quota limits.
- Ensures that Google can contact you about your application if necessary.
fix cs
update google maps provider doc
add premium support to GeocoderCaProvider + tests
Merge pull request #307 from toin0u/feature-geocoderca-premium

Add premium support to GeocoderCaProvider + tests
Merge pull request #306 from toin0u/hotfix-googlemaps

Support Google Maps API key
use hhvm-nightly instead
Merge pull request #309 from toin0u/hotfix-hhvm

Use hhvm-nightly instead
Prepare 2.5.0 release
Bump version to 2.5.1-dev
Throw InvalidCredentialsException with GoogleMBP

* When an invalid clientID / privateKey
  combination is used with the
  GoogleMapsBusinessProvider, throw an
  InvalidCredentialsException instead of a
  NoResultException.

* Test that the exception is thrown with the
  testGetGeocodedDataWithInvalidClientIdAndKey(),
  and
  testGetGeocodedDataWithINvalidClientIdAndKeyNoSsl()
  methods.

* Add two tests for the GoogleMapsProvider to
  test that expected results are returned when using
  a valid API Key (commented example added to
  phpunit.xml.dist and README.md) and that an
  InvalidCredentialsException is thrown when an
  incorrect API Key is used.
Merge pull request #315 from Decave/314-throw_invalid_credentials_exception_with_bad_google_maps_key

Throw InvalidCredentialsException with GoogleMBP