Add TypeList and InternalTypeList classes