The AlwaysLink and GroupByLink are currently implemented in the query engine. They don't need to be; they can be treated as filters; this would simplify the query-engine implementation while also allowing these two be to bused in a more general setting. See the critiques on the https://wiki.opencog.org/w/AlwaysLink#Critique and https://wiki.opencog.org/w/GroupByLink#Critique for a more detailed discussion.