fix a few imports
Rework model & include coupling

Coupling functions now part of model and rework how the model
classes are set up. Tradeoffs abound, and this is an exploration
of the design space.
rm coupling; subsumed by models