Term vector API: return 'found: false' for docs between index and refresh

Closes #7121
Aggregations: Remove the logic to optionally sort/dedup values on the fly.

These options are not used anymore. Instead numeric values can now contain dups
and it is the responsibility of the aggregation to deal with it (eg. terms).
And otherwise all values sources are now sorted, which is the contract of the
interfaces that they implement.

Close #7276
Facets: Removal from master.

Close #7337
[TEST] fixed concurrency issue in IndicesRequestTests
[TEST] bw comp testMultiGet should wait for yellow, not for green
Internal: Remove CacheRecycler.

The main consumer of this API was the faceting module. Now that it's gone,
let's remove CacheRecycler as well.

Close #7366
[PARSER] Clarify XContentParser/Builder interface for binary vs. utf8 values

Today we have very confusing naming since some methods names claim to
read binary but in fact read utf-16 and convert to utf-8 under the hood.
This commit clarifies the interfaces and adds additional documentation.

Closes #7367
More Like This Query: Switch to using the multi-termvectors API

The term vector API can now generate term vectors on the fly, if the terms are
not already stored in the index. This commit exploits this new functionality
for the MLT query. Now the terms are directly retrieved using multi-
termvectors API, instead of generating them from the texts retrieved using the
multi-get API.

Closes #7014
[TEST] added debug lines to bw comp testDeleteByQuery and testDeleteRoutingRequired
[TEST] Sort by the _id field instead of _uid field and also assert the sort value.