improve geohash_filter to use terms filter
and various other cleanups
Fix NumericTokenizer.

NumericTokenizer is a simple wrapper aroung a NumericTokenStream. However, its
implementations had a few issues: its reset() method was not idempotent,
causing exceptions if reset() was called twice (causing #3211) and it had no
attributes, meaning that the only thing it allowed to do is counting the number
of generated tokens. The reason why indexing numeric data worked is that
the mapper's parseCreateField directly generates a NumericTokenStream and
by-passes the analyzer.

This commit makes NumericTokenizer.reset idempotent and makes consuming a
NumericTokenizer behave the same way as consuming the underlying
NumericTokenStream.
Lookup Terms Filter _cache parameter not being taken into account
fixes #3219
better handling of null filters when caching them
Start shards endpoint...
Real shard info.
Make primary letter value.
Use IndicesStatus instead of ClusterState.
Add host.
Remove callback-based cluster state.
Implement column-aligned table.
Use table for shards output.
Use local cluster state.
Handle header.