Add ifExists() and refactor the LWT predicates.
Introduce ifEqualCondition() and deprecate ifConditions() methods
Fixes #173 Support timestamp and LWT predicates for DELETE operations
Fixes #172 Lowercase LWTLocalSerial() and LWTResultListener() for OptionsBuilder
Fixes #171 Refactor Options internally to use Optional everywhere
Fixes #171 Refactor Options internally to use Optional everywhere