Fix DestructiveOperationsIntegrationTests to wait for index to be allocated before closing
Make PUT and DELETE consistent for _mapping, _alias and _warmer

See issue #4071

PUT options for _mapping:

Single type can now be added with

`[PUT|POST] {index|_all|*|regex|blank}/[_mapping|_mappings]/type`

and

`[PUT|POST] {index|_all|*|regex|blank}/type/[_mapping|_mappings]`

PUT options for _warmer:

PUT with a single warmer can now be done with

`[PUT|POST] {index|_all|*|prefix*|blank}/{type|_all|*|prefix*|blank}/[_warmer|_warmers]/warmer_name`

PUT options for _alias:

Single alias can now be PUT with

`[PUT|POST] {index|_all|*|prefix*|blank}/[_alias|_aliases]/alias`

DELETE options _mapping:

Several mappings can be deleted at once by defining several indices and types with

`[DELETE] /{index}/{type}`

`[DELETE] /{index}/{type}/_mapping`

`[DELETE] /{index}/_mapping/{type}`

where

`index= * | _all | glob pattern | name1, name2, …`

`type= * | _all | glob pattern | name1, name2, …`

Alternatively, the keyword `_mapings` can be used.

DELETE options for  _warmer:

Several warmers can be deleted at once by defining several indices and names with

`[DELETE] /{index}/_warmer/{type}`

where

`index= * | _all | glob pattern | name1, name2, …`

`type= * | _all | glob pattern | name1, name2, …`

Alternatively, the keyword `_warmers` can be used.

DELETE options for _alias:

Several aliases can be deleted at once by defining several indices and names with

`[DELETE] /{index}/_alias/{type}`

where

`index= * | _all | glob pattern | name1, name2, …`

`type= * | _all | glob pattern | name1, name2, …`

Alternatively, the keyword `_aliases` can be used.
Consistent Indices API: Made GET mappings consistent

Added support for /{index}/_mappings/{type} and /{index}/_mapping/{type}
Also added spec tests

Relates #4071
Consistent Indices API: Made GET warmers consistent

Added support for /{index}/_warmers/{type}
Also added spec and integration tests to support wildcards and _all in
warmer names

Relates #4071
Consistent Indices API: Made GET aliases consistent

Added support for /{index}/_aliases/{name}
Also added spec tests to support wildcards and _all in get alias API

Relates #4071
Consistent Indices API: Made GET settings consistent

Added support for /{index}/_setting/{name}
Also added spec tests to support wildcards in setting name

Reverted parts of https://github.com/elasticsearch/elasticsearch/commit/0973b2863cab4b56390e3c80b0f3dbbf01e54e51
to fit into consistent API strategy

Relates #4071
Consistent Indices API: Returning empty json instead of 404

If an index exists, but a single warmer/setting/alias/type is missing
return an empty JSON instead of an 404

Relates #4071
Restoring old mapping filter behaviour again
Consistent Indices API: Added tests to make sure requests on aliases return the concrete index

Relates #4071
Incorporated review comments

TODO: Talk about naming of method added in Strings class
REST get mappings action

Added "mappings" as part of JSON response, so it aligns with warmers, aliases and settings.
Added correct validate method for GetSettingsRequest
Added null check Strings.isAllOrWildcard
Ensuring that GET /_aliases returns all indices, reverting
Fixing /_all/_alias/_all endpoint
Added support for /_alias and /_warmer
Added support for /_aliases/{name}
Adding support for /_warmer/{name}
Added support for /{index}/_mapping/_all and /_mapping/{type}
Adding support for /_settings/{name}