Made APIs consistently accept a query in the request body's `query` field

The following APIs now accept the query in a top level `query` field like:
* delete_by_query
* validate_query
* count

These APIs used to accept the query directly in the request body which was inconsistent with the search and explain APIs. For this reason this is a breaking change.

Count api note: It still has its own piece if code and isn't a shortcut for /_search?search_type=count (so no facets, aggs etc.) The count api code is fine tuned for simple counting and I think it should stay that way. 

Relates to #4074