updated findOne to support options