Dynamically create model subclasses; more DRY