[GEO] Add LinearRing and LineString validity checks as defined by http://geojson.org/geojson-spec.html to ensure valid polygons are specified at parse time.

Closes #8433
Fix: If dangling_timeout was set to 0 and auto_import_dangled
was set to yes, dangling indices were deleted by mistake,
because a RemoveDanglingIndices runnable was added
to every dangling indices, without considering the auto_import_dangled
setting.
fixed NPE in LocalGatewayMetaState
Core: Added query/filter wrapper that builds the actual query to be executed on the last possible moment to aid with index aliases and percolator queries using `now` date expression.

Percolator queries and index alias filters are parsed once and reused as long as they exist on a node. If they contain time based range filters with a `now` expression then the alias filters and percolator queries are going to be incorrect from the moment these are constructed (depending on the date rounding).

 If a range filter or range query is constructed as part of adding a percolator query or a index alias filter then these get wrapped in special query or filter wrappers that defer the resolution of now at last possible moment as apposed during parse time. In the case of the range filter a special Resolvable Filter makes sure that `now` is resolved when the DocIdSet is pulled and in the case of the range query `now` is resolved at query rewrite time. Both occur at the time the range filter or query is used as apposed when the query or filter is constructed during parse time.

Closes #8474
Closes #8534
Test: CorruptedFileTest.testCorruptionOnNetworkLayer used node settings when creating an index

Test used `indices.recovery.concurrent_streams` when creating an index but this is a node setting. Moved it to the node settings and added similar settings to speed up concurrent recoveries.
Aggregations: Fix geohash grid aggregation on multi-valued fields.

This aggregation creates an anonymous fielddata instance that takes geo points
and turns them into a geo hash encoded as a long. A bug was introduced in 1.4
because of a fielddata refactoring: the fielddata instance tries to populate
an array with values without first making sure that it is large enough.

Close #8507
[root mappers] fix conflict when updating mapping with _all disabled

_all reports a conflict since #7377. However, it was not checked if _all
was actually configured in the updated mapping. Therefore whenever _all
was disabled a mapping could not be updated unless _all was again added to the
updated mapping.
Also, add enabled setting to mapping always whenever enabled was set explicitely.

closes #8423
closes #8426
Parser throws NullPointerException when Filter aggregation clause is empty.
Added Junit test that recreates the error and fixed FilterParser to default to using a MatchAllDocsFilter if the requested filter clause is left empty.
Also added fix and test for the Filters (with an "s") aggregation.

Closes #8438
[TEST] Delete index in test to release file handles
[BLOOM] Fix Bloom filter ram usage calculation

BloomFilter actually returned the size of the bitset as the
size in bytes so off by factor 8 plus a constant :)

Closes #8564
Update DiskThresholdDecider javadoc

Since v1.3.0, and issue #6201, the default values in code and documentation have been updated to 85% and 90% for low and high watermarks. However, the related javadoc still contains the initial values : this commit fix this.
Aggregations: Fix geohash grid doc counts computation on multi-valued fields.

Close #8512
Fix wrong error messages in MultiMatchQueryParser.

Also fix a typo in the comment

Close #8597
Fix a typo in a javadoc comment in MapperService.

Close #8575
Docs: Added new elasticsearch-river-kafka plugin to the documentation (uses latest version of Kafka, EL Bulk API, and supports concurrent requests)

Closes #8518
Docs: Remove reference to imaginary "no_docs_query"

No reference to it in the source code except this file.

Closes #8566
Fix error in documentation

Indexation does not fail if no timestamp provided when there is a default value defined in mapping.
Missing quote in the example
Docs: Update update-settings.asciidoc

Inconsistent indentation

Closes #8525
Docs: Update plugins.asciidoc on river plugins section

Adding links to Amazon S3 and Google Drive river plugins

Closes #8544