Add dynamic response class feature
* Add new exception classes
* Add method setResponseClass
* Extend geolocation and geocoding interfaces
* Slightly refactor request and createFromResponse methods
* Update readme