Refactored out DBObject always being the returned type at the lowest
level. Added full lambda support for one param and all operators