part way through model refactor, moving away from sti