Middleware definition through DSL

Solves #14

Example:
```ruby
Jeckle::Setup.register(:my_super_api) do |api|
  api.base_uri   = 'http://my-super-api.com.br'
  api.headers    = { 'Content-Type' => 'application/json' }
  api.logger     = Logger.new(STDOUT)
  api.basic_auth = { username: 'steven_seagal', password: 'youAlwaysLose' }
  api.namespaces = { prefix: 'api', version: 'v1' }
  api.params     = { hello: 'world' }

  api.middlewares do
    request  :json
    response :json
    response :raise_error
  end
end
```

More info: https://github.com/tomas-stefano/jeckle/wiki/DSL-Definition
@tomas-stefano @brennovich I agree with `json` as default, but as this is a middleware stack, if we needed to change to `xml`, for example, I think the `json` would need to be removed from the stack. Is that right or I'm talking non sense?