assert that hash is clear before populating it
detect duplicate def names
Enforce that qstruct names begin with uppercase