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
Indices API: Added GET Index API

Returns information about settings, aliases, warmers, and mappings. Basically returns the IndexMetadata. This new endpoint replaces the /{index}/_alias|_aliases|_mapping|_mappings|_settings|_warmer|_warmers and /_alias|_aliases|_mapping|_mappings|_settings|_warmer|_warmers endpoints whilst maintaining the same response formats.  The only exception to this is on the /_alias|_aliases|_warmer|_warmers endpoint which will now return a section for 'aliases' or 'warmers' even if no aliases or warmers exist. This backwards compatibility change is documented in the reference docs.

Closes #4069
[DOCS] Additional documentation for _score accessing

Closes #7043
[TEST] added exception for GET index API to bwc tests
Internal: refactor copy headers mechanism to not require a client factory

With #7594 we replaced the static `BaseRestHandler#addUsefulHeaders` by introducing the `RestClientFactory` that can be injected and used to register the relevant headers. To simplify things, we can now register relevant headers through the `RestController` and remove the `RestClientFactory` that was just introduced.

Closes #7675
[TEST] parse response body as json depending on the content-type in our REST tests
[API] Fix minor issues with indices.get definition and tests

mark index param as required
make body match json, not string containing json
Test: Let both types have a non_analyzed id field.
[DOCS] clarification of breaking changes to 1.4 due to GET index API
[TEST] Use a real unique clustername for InternalTestClusterTests
Spec: Fixed the docs URL for indices.get and indices.exists
Changed dev-tools/es_release_notes to:
* remove markdown support
* prefer PRs over issues
* include related issues in the list
* always use section headers if there is a header
[STORE] Improve exception from Store.failIfCorrupted

If you have previously corrupted files, this method currently builds an
exception like:
```
    failed engine [corrupted preexisting index]
    failed to start shard
```

Followed by a CorruptIndexException. This commit writes the entire
stacktrace to provide additional information. It also changes the
failure message from `corrupted preexisting index` to `preexisting
corrupted index` to prevent confusion.

Closes #7596
Aggregations top_hits: Fixed inconsistent sorting of the hits

In the reduce logic of the top_hits aggregation if the first shard result to process contained has no results then the merging of all the shard results can go wrong resulting in an incorrect sorted hits.
This bug can only manifest with a sort other than score.

Closes #7697
More Like This API: remove unused search_query_hint parameter

Closes #7691
[TEST] Use a sorted set since sets are compared and compare is order specific
[TEST] fix another rounding issue