Add additional query validation to the terms query parser

Fixes #2608
Removed `execution_type` for has_child and has_parent.
Use CacheRecycler when resolving parent docs in TopChildrenQuery.
Made SoftWrapper fields final.
Add proper cleanup to InternalSettingsPerparerTests
Made sure that wrapped child query / parent query gets rewritten only once.
Fix settings processing in WordDelimiterTokenFilterFactory
Improve stability of RecoveryPercolatorTests

Without "action.wait_on_mapping_change" setting set to true, the test node might get shutdown before updated mapping is saved.
Move action.wait_on_mapping_change setting to pom
Remove XTermsFilter and UidFilter in favour of Lucene 4.1 TermsFilter
Throw a more meaningful message when no document is specified for indexing
Attempt to fix "No active shards" failure
Added more info to assert
Fixes size assertion failure.
don't use substraction for comparison if datatypes can overflow
Added sort by field that have multiple values per document.

Closes #2634
Extended mv sorting integration test
Cleanup NumericFieldData. FieldData interfaces are reduced to long and double while internal
represenations still operate on the actual datatypes.
added priority support for cluster state updates:

 * URGENT:
    * cluster_reroute (api)
    * refresh-mapping
    * cluster_update_settings
    * reroute_after_cluster_update_settings
    * create-index
    * delete-index
    * index-aliases
    * remove-index-template
    * create-index-template
    * update-mapping
    * remove-mapping
    * put-mapping
    * open-index
    * close-index
    * update-settings

* HIGH
    * routing-table-updater
    * zen-disco-node_left
    * zen-disco-master_failed
    * shard-failed
    * shard-started

* NORMAL
    * all other actions
fixed a bug in PrioritizedThreadPoolExecutor:

now execute(Runnable) verifies the command is added as PrioritizedRunnable