Update BloomFilter

Allow the user to configure the number of hash functions as well as add
support for serializing/deserializing the bloom filter from a stream.
Add a hashCode to the bloom filter.
Don't take static memory of test base classes into account when checking for static leftovers.
Added catch EsRejectedExecutionException when trying to reschedule river start
Added test for Update API via native scripts

Motivation was to have a test ready as well as something other people could have a look at.
Size docIdsToLoad appropriately in SearchService

Closes #4156
Added test for PR #4157 (deep pagination in a small index)
Handle pretty=false and missing line feed for pretty=true which is the default for main REST action
Update FilterBuilder and QueryBuilder interfaces

Make the FilterBuilder interface consistent with the QueryBuilder
interface and replace usage of QueryBuilderException with
ElasticSearchIllegalArgumentException.
Move ?pretty=false handling to the builder instead of mutating the map
Fixed small test bug.
DateFieldMapper.merge() can change date format and include_in_all

In order to be able to add an additional date to a date field mapper,
the merge operation has to support this.

Closes #3727
Making SearchRequest in PutWarmerRequest mandatory & validated

The search request inside of a put warmer request was nullable, but actually we have to have that request in the transport action.
Validation and appropriate test added.

Closes #4196
Ignore slow log configuration on shard creation

In case of a misconfigured slow search/index configuration (unparseable
TimeValue) an exception is thrown.

This is not a problem when creating a shard of an index, as an exception
is returned and all is good. However, this is a huge problem, when
starting up a node, as the shard creation is repeated endlessly.

This patch changes the behaviour to go on as usual and just disable the
slowlog, as an improper configuration of logging should not affect the
allocation behaviour.

Closes #2730
Revert Ignore slow log configuration on shard creation

This reverts commit 10810f00d490fdae35cdcff6f1a132d7c21c4816 as this introduces an exception to the rule when parsing settings.
Add a field data based TermsFilter

Add FieldDataTermsFilter that compares terms out of
the fielddata cache. When filtering on a large
set of terms this filter can be considerably faster
than using a standard lucene terms filter.

Add the "fielddata" execution mode to the
terms filter parser to enable the use of
the new FieldDataTermsFilter.

Add supporting tests and documentation.

Closes #4209
Running the node stats api while a shard is moving onto the node logs an exception
fixes #4203
build randomization script

this script genereates envrionment property file necessary to do
jenkins randomization testing
jenkin hookup modification

1) add build_desc property variable
2) use build_id plus build_number as an unique file name
3) tools subdirectory should be under current PWD when the script is
executing
NPE in PluginsService when starting elasticsearch with a wrong user
When starting elasticsearch with a wrong linux user, it could generate a `NullPointerException` when `PluginsService` tries to list available plugins in `./plugins` dir.

To reproduce:

* create a plugins directory with `rwx` rights for root user only
* launch elasticsearch from another account (elasticsearch for example)

Related discussion: https://groups.google.com/forum/#!topic/elasticsearch/_WRW4Qfpo7M

Closes #4186.
Closes #4187.
Removed redundant masterNodeTimeout, already present in the ClusterStateUpdateRequest base class