CStruct.typedef(name, factory, … )
ya ya, I know, these are weird. I‘m not sure why I even bothered to inherit from array…
apply_restraint( name, restraint, name2, restraint2 … )
create_restraints( [ name, stuff_to_restraint_constructor ] … )
Iterate through all fields and values
Produce a list of field names
[Validate]