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'm not really looking forward to writing native adapters for curl and whatnot, while Guzzle is so great for that. I think Guzzle should be the default. Just look at how less code you need to do those requests compared to streams or curl.