Adds a base Frenetic Error class that more specific errors can inherit from
Loosens the Addressable dependency
Removes Guard/Spork since I don't really use it anymore
Hash key cleanup
Refactored the Configuration object

* Ditches YAML auto-loading. Its now up to the end user to support YAML config files
* The API should remain the same for all other use cases
[Fixes #4] Adds support for additional user-specified Faraday Middlewares