Refactor client to use a middleware stack [#6]

In reality, it's hardly using it, but it's there and it works
Put existing middlewares into their own classes
Just use endpoint_for to know if the client should respond to a method
Clean up middleware creation a bit
Move the removal of empty strings into a middleware
Move faraday middleware to a different namespace than the normal middleware
Remove unnecessary mention of the allow_empty_string_params option
Move the Graylog HTTP middleware the StackerBee::HTTPMiddleware namespace
Move `middlewares` configuration option to `faraday_middlewares`
Add ability to configure middleware
Add tests for configuring middleware
Add some documentation about configuring middleware
Bugfix: Client.list_accounts uses the same path as Client.request(:list_accounts)
Remove logger from CLI client
Change middleware to be configured with classes, not instances
Change middleware to be configured via the "builder" pattern