Implement MaxData GeoIP2 provider and database adapter

Update README.md, add requirements/suggest to composer.json.
Change access of GeoIP2 database-reader, due to problems with JSON-encoded geodata.
Refactor GeoIP2Provider: Use injection of Maxmind provider.

Instead of using only the database reader of Maxmind, inject the Maxmind provider. Thus both is available: database reader and webservice client.
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
Merge pull request #303 from jenswiese/geoip2

Implement MaxData GeoIP2 provider and database adapter
Fix CS/doc for PR #303
Add PHP 5.6 to travis-ci config
remove Google's sensor parameter

The Google API previously required that you include the sensor
parameter to indicate whether your application used a sensor to
determine the user's location. This parameter is no longer required.

- https://developers.google.com/maps/documentation/geocoding/#Sensor
Merge pull request #316 from JCID/master