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