Create a CollectionData class that is used in Collection, and have individual Collection types subclass of CollectionData