Interface for execution of a basic graph pattern.
A StageGenerator is registered in the context of an query
execution to be found and called by the StageBuilder.
The StageGenerator is called repeated for a basic graph pattern
with each possible bindings unused to instantiate variables
Each call of a stage generator returns a QueryIterator
of solutions to the pattern for each of the possibilities
(bindings) from the input query iterator.
Result bindings to a particular input binding should use that
as their parent, to pick up the variable bounds for that