Tests: Do not index dummy documents in ExistsMissingTests.

This way we make sure that there is only one mapping for
_field_names.
Discovery: Improve the lifecycle management of the join control thread in zen discovery.

Also added:
* Better exception handling in UnicastZenPing#ping and MulticastZenPing#ping
* In the join thread that runs the innerJoinCluster loop, remember the last known exception and throw that when assertions are enabled. We loop until inner join has completed and if continues exceptions are thrown we should fail the test, because the exception shouldn't occur in production (at least not too often).
Applied feedback 3

Closes #8327
[TEST] exclude org.elasticsearch.test.test package from test-jar

The package was only excluded during test-jar sources generation but ended up in the actual jar.
[TEST] move NettyTransport*Tests to org.elasticsearch.transport.netty package

NettyTransport*Tests were previously in org.elasticsearch.test.transport and ended up being exported with the test jar. org.elasticsearch.transport.netty should be a better place for them together with exising tests.
[TEST] Fix the throttle test.
[TEST] move ClusterDiscoveryConfiguration to org.elasticsearch.test.discovery

ClusterDiscoveryConfiguration is part of the test infra and should get exported as part of the test jar. This is achieved by moving the class to org.elasticsearch.test.discovery

Closes #8337
Update zen.asciidoc

Tidied up the "No master block" asciidoc
Update cluster.asciidoc

Fixed asciidoc on cluster module page
Update cluster.asciidoc - fix invalid asciidoc
[TEST] assign a name to the transport client created within ExternalTestCluster

The transport client created within ExternalTestCluster needs a name that follows our naming convention otherwise the thread leak filter barfs when running tests against an external cluster. Used "transport_client_external_{n}" where n gets incremented every time a new external cluster gets created. Updated thread leak filters rules to ignore threads created by such transport client.
Test: make field `id` is defined in mapping, so sort can't fail
Docs: Updated JVM version
release [1.4.0]
Bump to 1.4.1-SNAPSHOT

Adds Version constant and updates the :version: key in index.asciidoc
1.4.1 is a SNAPSHOT release, pass `true` for Version constructor
Clarified support of index aliases

Clarified the support of index aliases in the snapshot section for the `indices` parameter.
Update Sonatype release link in build_release.py
[TEST] fixed scriptedMetricTests

The tests were failing because there was a shard which didn't get any documents and the tests assumed all shards had documents. This commit fixes this assumption
[docs] fix typo in getting-started

Closes #8354
[TRANSLOG] Translog leaks filehandles if it's corrupted or truncated

If the translog file is corrupted or truncated the stream is never closed
and the filehandle leaks. This commit closes the stream in the case of an
exception.