minor refactoring. Added FetchOneThenReplace support.
added FetchOneAndUpdate.