(w.i.p) Adds query_visitor 

This needs to be changed - all of the query stuff should be removed
and instead use transformation to 3x AST.
(#22363) Add support for evaluation of CollectExpression.

This replaces the earlier attempt of improving the CollectExpression
evaluation with an extended set of operations. The 3x API proved to
be too complicated. Instead, the implementation now performs a
transformation to the 3x way of handling Collection and evaluates
the transformed logic.