Major touchup

* Added docblocks
* Added namespace
* Improved composer configuration
* Streamlined the API (BC Breaks).
* Refactored code for more readability
* Added adapters. Guzzle as client is now interchangeable.
* Added request and response filters. Users can now modify the Symfony requests and responses to their liking.
i'd suggest to rename it to ```filterRequest``` to support filter classes that can implement the request and the response interface at the same time.