allowing payload for methods like DELETE.

Hello again :)

In its delete_by_query api, elasticsearch allows the query to be passed in the query string, but also as a json payload. This should allow that, and also does some cleanup, by treating the absence of a payload as a payload of 0 size (content-length).

Any thoughts?