adding std::function extraction for basic predicates
adding an entity selector