Eager norms loading options.

Norms can be eagerly loaded on a per-field basis by setting norms.loading to
`eager` instead of the default `lazy`:

```
"my_string_field" : {
  "type": "string",
  "norms": {
    "loading": "eager"
  }
}
```

In case this behavior should be applied to all fields, it is possible to change
the default value by setting `index.norms.loading` to `eager`.

Close #4079
Brought back the deprecated _aliases api.
Rename `score` to `track_scores` in percolate api.

Closes #4624
[SPEC] Bringing back the specs for _aliases
s/StringBuffer/StringBuilder
Clarify options for flush request
Use a tolerance to decide if a value is less than the threshold

Adding a small value to the threshold prevents weight deltas that are
very very close to the threshold to not trigger relocations. These
deltas can be rounding errors that lead to unnecessary relocations. In
practice this might only happen under very rare circumstances.
In general it's a good idea for the shard allocator to be a bit
more conversavtive in terms of rebalancing since in general relocation
costs are pretty high.

Closes #4630
Add a message about import style

We don't have a consistent style and we don't want new contributors to
get hung up on trying to figure out the style.
Page-based cache recycling.

Refactor cache recycling so that it only caches large arrays (pages) that can
later be used to build more complex data-structures such as hash tables.

 - QueueRecycler now takes a limit like other non-trivial recyclers.
 - New PageCacheRecycler (inspired of CacheRecycler) has the ability to cache
   byte[], int[], long[], double[] or Object[] arrays using a fixed amount of
   memory (either globally or per-thread depending on the Recycler impl, eg.
   queue is global while thread_local is per-thread).
 - Paged arrays in o.e.common.util can now optionally take a PageCacheRecycler
   to reuse existing pages.
 - All aggregators' data-structures now use PageCacheRecycler:
   - for all arrays (counts, mins, maxes, ...)
   - LongHash can now take a PageCacheRecycler
   - there is a new BytesRefHash (inspired from Lucene but quite different,
     still; for instance it cheats on BytesRef comparisons by using Unsafe)
     that also takes a PageCacheRecycler

Close #4557
generic thread pool should always be cached
when using generic thread pool, some elements in the code base rely on the fact that it will always be able to fork it
simplify by directly getting the search TP info
*a*wait...
Add more info to table row size errors.
Add ByteSizeValue to SegmentStats.
Add rest of indices primaries stats.
Add alias sample.
Swap help and headers params.
Add remaining aliases to cat/indices.
Document h/headers switcheroo.
Add total stats to cat/indices.