Provide more context variables in update scripts

In addition to `_source`, the following variables are available through the `ctx` map: `_index`, `_type`, `_id`,  `_version`, `_routing`, `_parent`, `_timestamp`, `_ttl`.

Some of these fields are more useful still within the context of an Update By Query, see #1607, #2230, #2231.
In this example, you can use `assert` directly in the script itself, so you could do

```java
.setScript("assert ctx._version == 1 : \"version should be 1\"" +
           ... etc ...
```

If you would like to (I think either way is fine, just depends on personal preference).