Much complexity, much collection

Introduces the ability to have collections of properties built from
other structs and representer modules.