DATAMONGO-828 - UpdateFirst throws OptimisticLockingFailureException when updating document that does not exist.

Added inspection of query dbo for check if the `Update` should only apply to a given version. If so and no documents have been updated we still throw an `OptimisticLockingException` for all other cases like `MongoTemplate.updateFirst` zero affected documents is fine.