It may not be used any more in this PR but it is used in master as part of the relational phases. These should eventually be rewritten to make most decisions based on types. Things like the UnionLeft exctractor will probably not be needed anymore in such a rewrite.