Tests: log when an ensure green/yellow comes back

Also added some trace logging to SimpleRecoveryLocalGatewayTests
Test: Added more assertions
[Rest] reroute API response didn't filter metadata

By default the reroute API should return the new cluster state, excluding the metadata. It was however it was wrongly using an old parameter (filter_metadata) and thus failed to do so. This commits restores but wiring it to the correct `metric` parameter. We also add an enum representing the possible metrics, to avoid similar future mistakes.

Closes #7520
Closes #7523
[docs] Fix typo: resonable - reasonable
Gateway: added trace logging to translog recovery logic

Enabled it in SimpleRecoveryLocalGatewayTests
Fixing some grammar
The description was incorrect

Looked like a copy and paste from another aggregation
missing logging brackets
Aggregation top_hits: Move sort resolution to the reduce method, so it is always guaranteed to be invoked.
[TEST] added more information to fail message for a test to debug test failure
[TEST] Added logging of response to aid debugging
Test: Fields in percolator query must exist before percolating
Core: Use FixedBitSetFilterCache for delete-by-query.

Leftover from #7037.
Close #7581
Bulk UDP: Removal.

This feature is rarely used. Removing it will help reduce the moving parts
of Elasticsearch and focus on the core.

Close #7595
Translog: remove unused stream

Closes #7683
Docs: Fix misnamed setting

The settings is `index.merge.policy.reclaim_deletes_weight` not
`index.reclaim_deletes_weight`.

Closes #7676
Add inline comment to prevent confusion
Docs: Added recommended Java versions to the docs
Docs: A simple typo.

Closes #7535
Resiliency: Master election should demotes nodes which try to join the cluster for the first time

With the change in #7493,  we introduced a pinging round when a master nodes goes down. That pinging round helps validating the current state of the cluster and takes, by default, 3 seconds. It may be that during that window, a new node tries to join the cluster and starts pinging (this is typical when you quickly restart the current master).  If this node gets elected as the new master it will force recovery from the gateway (it has no in memory cluster state), which in turn will cause a full cluster shard synchronisation. While this is not a problem on it's own, it's a shame. This commit demotes "new" nodes during master election so the will only be elected if really needed.

Closes #7558