begin pseudo code formulation. thinking to further reduce preOrder/postOrder, as well as early aborting iso search
makes me think that `query` should really return `Mark | IsoResult`, where `IsoResult` does not carry the mark (twice), but merely the pre/post views
that's faster
...