Parallelized rivers creation in RiverTests#testMultipleRiversStart

Rivers are now registered concurrently from separate threads, one per river.
Make shard balancing deterministic if weights are identical

It happens to be the case that the iteration order of a HashMaps
keyset might be different across runs. This can cause undeterministic
results in shard balancing if weights are identical and multiple shards
of the same index are eligable for relocation. This commit adds
a tie-breaker based on the shard ID to prioritise the lowest shard
ID. This also makes `AddIncrementallyTests#testAddNodesAndIndices`
reproducible.

Closes #4867
Move provided lucene-expression jar below the test-framework

Having a dep that refrences lucene-core before the test framework
confuses some runners.
Documentation for score_mode

Closes #4742
ClearScrollRequest should set a type parameter

Since ActionRequest requires a bounded type parameter.
Fixed an issue where there are sug aggregations executing on a single shard, the reduce call was not propagated properly down the agg hierarchy.

Closes #4843
fixed license header indentation
fixed the reduce of InternalGeoHashGrid when executing on a single shard
Added more unit like test that verifies that has_child is never cached even if wrapped by another filter.
Throw exception if `cluster.name` is specified in TestCluster node settings

We rely on the `cluster.name` setting to be the same across all nodes
and transport clients etc. If a node setting contains `cluster.name`
the test might not work if a random transport client is swapped
in. Passing such a configuration should result in an exception since
it's clearly an illegal state.
Use different field names based on the data type in aggregations tests.

Tests fail once in a while because of a ClassCastException at the mvel level.
We suspect that this happens because a script that is JIT-ed on a specific
data type cannot later be used with another one, but we didn't manage to
reproduce in our development environments, so let's try to change the field
names to see if this error keeps occurring.
Re-Sort config/names
Removed old serialization logic (<= 1.0-RC1) in readFrom and writeTo methods.
Removed duplicated registration of warmers as custom metadata type

Already done in a static block within IndexMetaData
Removed put/delete warmer tests that were meant to test that the serialization was bw compatible after adding support for acks
Removed redundant version checks in transport serialization (#4731 leftover)
Remove duplicate cache columns
Normalize cat headers, add aliases

Closes #4852.
Add tera and peta to RestTable.renderValue()

Closes #4871
Install SecurityManager inside ElasticsearchTestCase for easier randomization

We currently run always with SecurityManager installed. To make sure we
work also without we should randomly swap it out ie. run without the
security manager.