Moves validity info to model, simplifies pages