Also wrap IndexInput if CFS is used
Add a benchmark endpoint for elasticsearch that simplifies benchmarking
queries, faceting and suggestions including highlighting etc.

This endpoint allows benchmarking individual queries against each other
or different query setups like larger sizes or pagination. All types
that are allowed in a SearchRequest passed to `_search` can also
be passed to `_bench` in order to be benchmarked.

The current version registers itself in the cluster state and allows to run
on nodes that are flagged with `-Des.node.bench=true`. This allows to run
benchmarks from multiple nodes etc. We also have the ability to cancle / abort
benchmarks if they are are not returning etc.

TODOs:
 - add support for percolator?
 - add support for pre / post round executions like clear caches or
   expand replicas / wait for green
 - add support to send per query result to another index
 - add support for suggest endpoint to test in isolation
 - allow to produce indexing load maybe via a script
 - allow listing of running benchmarks via REST and API
 - allow abort via REST api (only java currently)
 - add tests for cache clearing
 - add support for cache clearing in the REST API
 - add upperbounds for iterations etc. to prevent OOM