Ugly model implementation of model.
Some tests running and some passing.