Handle setups where "_source" is disabled.  Update resets values of fields not present in the update-field-list.

Use es.update instead of es.index when performing an update as the former allows partial update of documents whereas the later resets/discards values from the index for the fields that are not part of the update field set, thereby making such updated documents unsearchable using any previously searchable query terms or filter.
This applies the update to `document`, which isn't the same as the document that was actually indexed in ES. It contains info like `_id` and `_type`, but doesn't contain any of the fields we want to update (these would have been in `_source`). Although this avoids the `KeyError` while trying to access `_source`, it doesn't actually update the document in ES.

What we should do anyway, however, is check for `_source` in the document retrieved from ES and log an error if this field is absent, since we can't do the update without it.

If we wanted to add an option for old-style upserts instead of updates, as discussed in #143, this has to be done in OplogThread, since a DocManager doesn't have any connections to the source MongoDB cluster.