extra_params use Hash#deep_merge! instead of merge

This allows support for this use case:

```ruby
post '/post' do
  parameter :title, 'Title of post', scope: :post
  parameter :author_id, 'Integer of author', scope: :post

  let(:title) { 'My First Post' }
  let(:author_id) { '8' }

  example_request 'returns successful' do
    expect(response_body).to have_key(:id)
  end

  example_request 'fails with malformed id', post: {author_id: 'asdf'} do
    expect(response_body).to have_key(:errors)
  end
end
```

Before this change the params changes from `post: {title: 'My First Post', author_id: 'asdf'}` to `post: {author_id: 'asdf'}`. `Hash#deep_merge!` resolves this.