Ignore :payload options for Search#params.

When building a Tire.search DSL with a hash of options for the payload, we need to ignore
the `:payload` in `params` so the `to_curl` and logging does not include a bunch of noise.

TODO: ignore :payload in these two places too:

- [ ] https://github.com/karmi/tire/blob/master/lib/tire/count.rb#L26
- [ ] https://github.com/karmi/tire/blob/master/lib/tire/multi_search.rb#L181

Related: #292, #259, #15

Closes #641
Remove deprecated Tire.search('{"json":"string"}') API
Allow passing URL options when passing search definition as a Hash

Example:

    Tire.search 'dummy', :query => { :match => { :foo => 'bar' } }, :search_type => 'count'

Closes #661
Removed redundant `rescue` clause in Tire::DSL.search