Refactoring: Remember auxillary top level classes in GenTypeElement
instead of passing them around as param everywhere