Moves further responsibilities into models