initial commit on new metaclass-driven models
use self.ns in exception message
most of the way there on the new models
add a TODO
merge