composite select objects do not track columns completely
composite selects are used mostly for UNION, UNION ALL statements, and represent a list of SELECT statements. SA, particularly the ORM, relies heavily on the abiltiy to map columns in different kinds of select's, aliases of those selects, etc. to the underlying table columns, and then back up to the columns of another select object which references "the same" columns.
a composite select is unique in that it only cares about the first select in its list. find some way to get column tracking to work for all the selects embedded in a composite select, i.e. _get_col_by_original() works for all columns that are represented somewhere in the object.