add Configuration#middlewares to customize middleware stack

Added a configuration option to customize used middleware to be able to e.g. add a local cache. Here is an example of how you could initialize customized middleware list. Notice that we can pass parameters to middleware components by specifying them in an array.

````ruby
custom_mw =
[
  [FaradayMiddleware::Caching, ActiveSupport::Cache::FileStore.new(cache_path, ... ), 
      { :ignore_params => %w[auth_token] } ],
  Faraday::Response::Logger
]

AirbrakeAPI::Client.new(:middleware => AirbrakeAPI::Configuration::DEFAULT_MIDDLEWARE + custom_mw)
````