Added indices aliases exists api.

Added indices aliases exists api that allows to check to existence of an index alias. This api redirects to the master to check for the existence of one or multiple index aliases.

Possible options:
* `index` - The index name to check index aliases for. Partially names are supported via wildcards, also multiple index names can be specified separated with a comma. Also the alias name for an index can be used.
* `alias` - The name of alias to check the existence for. Like the index option, this option supports wildcards and the option the specify multiple alias names separated by a comma. This is a required option.
* `ignore_indices` - What to do is an specified index name doesn't exist. If set to `missing` then those indices are ignored.

The rest head endpoint is: `/{index}/_alias/{alias}`

Examples:
Check existence for any aliases with the name 2013 in any index:
```
curl -XHEAD 'localhost:9200/_alias/2013
```
Check existence for any aliases that start with 2013_01 in any index
```
curl -XHEAD 'localhost:9200/_alias/2013_01*
```
Check existence for any aliases in the users index.
```
curl -XHEAD 'localhost:9200/users/_alias/*
```

Closes #3100
Make suggester implementation pluggable

This patch tries to make the suggester implementation as pluggable as
facets or highlight implementations. The goal is to be able to create
own suggest implementations in a suggest query.

Closes #3089
term vector request: new feature for retrieving the term vectors for a specific document

Term vectors consist of term frequency, term positions, start/end offsets and payloads.
Depending on if these four items were stored in the index, the TermVectorResponse returns
them if requested.

Apart from the classes needed for implementing the feature in package

src/main/java/org/elasticsearch/action/termvector/  and
src/test/java/org/elasticsearch/test/integration/termvectors/

and the registration of the fuctionallity in

src/main/java/org/elasticsearch/client/Client.java
src/main/java/org/elasticsearch/client/support/AbstractClient.java and
src/main/java/org/elasticsearch/client/transport/TransportClient.java

, this commit introduces the following changes:

XContentBuilder
new method
public XContentBuilder field(XContentBuilderString name, int offset, int length, int... value)
to put an integer array.

IndicesAnalysisService
make token filter for saving payloads available in elasticsearch

AbstractFieldMapper/TypeParser
make term vector options string available and also fix the parsing of this string:
with_positions_payloads is actually allowed as can be seen in TermVectorsConsumerPerFields.