rename and document "index.mapping.date.parse_upper_inclusive" setting for date fields

The setting causes the upper bound for a range query/filter to be rounded up,
therefore the name `round_ceil` seems to make more sense.

Also this commit removes the redundant fourth parameter to DateMathParser.parse(..)
which was never used.
was:    parse(String text, long now, boolean roundUp, boolean upperInclusive)
is now: parse(String text, long now, boolean roundCeil)

closes #3914
Fix issue 3989

Multi term vector request never returned if shards for all requested documents
were non existent.

closes #3989
Wrote first draft for pre-selecting terms in TermVector API
Make sure that selected terms that are not on doc are returned with freq 0

If specific terms are requested, they should be returned with freq 0 if they do not
appear in the document. To do this efficiently, we compute a sorted list of
terms and then intersect this list with the terms in the documents when writing
the terms.

This commit changes an inconsistency of uri parameter handling:
Previously, when selected fields were given in the uri parameters,
these fields were added to the list of selected terms. This does not make
sense since it is not the other way round. Now, uri parameters are always
overwritten by the parameters given in the body.

closes #3924 for single term vector request
[DOC] add doc for terms param
Make parsing of uri and body parameters consistent with single term vector api

Uri parameters were not all parsed for the multi term vector request. This commit
makes sure that all parameters are parsed and used when creating the requests for the
multi term vector request.

In order to simplify both code and json request, the request structure now allows
two ways to use multi term vectors:

1. Give all parameters for each document requested in the docs array like this:

```
{
   "docs": [
      {
         "_index": "testidx",
         "_type": "test",
         "_id": "2",
         "terms": [
            "fox"
         ],
         "term_statistics": true
      },
      {
         "_index": "testidx",
         "_type": "test",
         "_id": "1",
         "terms": [
            "quick",
            "brown"
         ],
         "term_statistics": false
      }
   ]
}
```

2. Define a list of ids and give parameters in a separate parameters object like this:

```
{
   "ids": [
      "1",
      "2"
   ],
   "parameters": {
      "_index": "testidx",
      "_type": "test",
      "terms": [
         "brown"
      ]
   }
}
```

closes #3924 for multi term vector api
[DOC] add doc for multi term vector api

closes #3998