refactored Update and ReplaceOne to be more like find. Refactored find to use common base class.