Recovery: change check for finished to a ref count check

we current check that the recovery is not finished when people access the status local variables. This is wrong and we should check for the refcount being > 0 as it is OK to use the status after it has marked as finished but there are still on going, in-flight reference to it.

Relates to #8092

Closes #8271
[TEST] Added awaits fix to failing LoggingConfigurationTests
[TEST] added additional logging to LoggingConfigurationTests

This is to try to determine why the test passes locally but not on the CI builds
Docs: Updated Perl client page to mention async client

Closes #8012
Update source-field.asciidoc

very minor typofix

Closes #8066
Docs: Update getting-started.asciidoc

Closes #8194
Docs: Update getting-started.asciidoc

Closes #8195
[TEST] added more additional logging to LoggingConfigurationTests

This is to try to determine why the test passes locally but not on the CI builds
Upgrade to Lucene 4.10.2
[TEST] re-enabled AwaitsFix for LoggingConfigurationTests
Revert "[TEST] re-enabled AwaitsFix for LoggingConfigurationTests"

This reverts commit c548a526570a016d353fe4a9e67129898cae4178.
Revert "[TEST] added more additional logging to LoggingConfigurationTests"

This reverts commit b3a60130bae321ca5d82c781c88941a3d3df0594.
Revert "[TEST] added additional logging to LoggingConfigurationTests"

This reverts commit c639815af9ca348e9876b1fd513b51a08fd0c65d.
Revert "[TEST] Added awaits fix to failing LoggingConfigurationTests"

This reverts commit f8ea7c15d7b018334b7f0b3a92ba60e7c073c168.
Revert "Core: Fix location information for loggers"

This reverts commit 4ebbb657d853895b543a42451ee84975ddf8e925.
[TEST] Upgrade test can only run if major or minor version differs
Core: Fix location information for loggers

This change corrects the location information gathered by the loggers so that when printing class name, method name, and line numbers in the log pattern, the information from the class calling the logger is used rather than a location within the logger itself.

A reset method has also been added to the LogConfigurator class which allows the logging configuration to be reset. This is needed because if the LoggingConfigurationTests and Log4jESLoggerTests are run in the same JVM the second one to run needs to be able to override the log configuration set by the first

Closes #5130, #8052
Plugins: Support usage of ES_JAVA_OPTS in plugin commands

As that environment variable can contain elasticsearch specific configuration
like the path to a configuration, it makes sense to support in both
elasticsearch commands.

Closes #8288
[STORE] Cut over MetaDataStateFormat to NIO Path API

This class already uses Path most of the time since it
uses ATOMIC_MOVE. This commit makes it a bit more consistent.
Forgot to cut over the child filter in nested filter to use fixed bitset cache.