Core: Upgrade to lucene-5.0.0-snapshot-1642891.

The only required change was to add a description to our index outputs.

Close #8743
[TEST] speed up tests by reducing the recovery retry by default
Update range-filter.asciidoc

Closes #8741
[TEST] use private randomness in InternalTestCluster
[docs] formatting and general pedantry

I'm not sure if the `distance-units` section is totally clear, when using the 'Geohash Cell Filter' and omitting a unit, the default is to interpret the integer as the 'length of the geohash prefix', not to default it to 'meter'. Maybe I'm being pedantic.

Closes #8744
Fix resource description of VerifyingIndexOutput.
Override write(byte[] b, int off, int len) in FilterOutputStream for better performance

Closes #8748
Add File.java to forbidden APIs

This commit cuts over all of core (not quite all tests) to java.nio.Path
It also adds the file class to the core forbidden APIs to prevent its usage.

This commit also resolves #8254 since we now consistently useing the NIO Path
API. The Changes in this commit allow for more information if IO operations fail
since the NIO API throws exceptions instead of boolean return values. The build-in
methods used in this commit are also more resillient to encodeing errors like
unmappable characters and throw exceptions if those chars are present in a file.

Closes #8254
Closes #8666
Revert back APIs that resolve files from classpath to java.net.URL

The conversion to the Path API doesn't work if the path points
to a file inside a JAR like a config. These path must be read
while the ZIP filesystem is opened which can't be guaranteed across
the board. This commit reverts back the relevant changes to java.net.URL
and adds a util method to read UTF-8 Encoded files from URLs correctly.
[TEST] guarantee REST tests execution order

REST tests are being shuffled before their execution. To guarantee their repeatability given the seed, their order needs to be always the same before the shuffling happens.

Closes #8745
[PLUGIN] don't set posix permission on filesystem that don't support it
[PLUGIN] Don't use atomic move when installing plugin

the extract location might be on a different filesystem where
atomic move won't work. Yet this operation is not critical in terms
of visibility so there is no need to do this.
[TEST] Wait for yellow before running rescorer tests
[Doc] Add an UpdateRequest example to Java API doc

Closes #7083.
java: QueryBuilders cleanup: remove deprecated

Related to #8667:

Some QueryBuilders have been deprecated in 1.x branches. We removed them in 2.0.

Removed
-------

* `textPhrase(...)`
* `textPhrasePrefix(...)`
* `textPhrasePrefixQuery(...)`
* `filtered(...)`
* `inQuery(...)`
* `commonTerms(...)`
* `queryString(...)`
* `simpleQueryString(...)`

Closes #8721.
[TEST] remove action names bwc layer

The bwc layer added with #7105 is not needed in master as a full cluster restart will be required, thus from 2.0 on the only supported action names are compliant to the defined conventions and don't need to be converted to the old format

Closes #8758
[DOCS] Document ActionNamesTests
[Doc] Java API: add search templates

Closes #7321.
[Doc] Java API: add information on JBoss EAP

Closes #3445.
API endpoint cluster.put_settings accepts timeout & master_timeout query parameters

Closes #8769