this code is dead, removing
no need to define the constant twice
users should be warned if clobbering constants
push module building to the constructor
push more mutations outside the factory method
make mutation method apis more consistent
remove more mutations from the `build` method
association builder classes no longer need the model

decouple the builder classes from the model.  Builder objects should be
easier to reuse now.