Add in valdation tests at the model layer

This allows us to get rid of one feature
This gives us more confidence that our tests are correct.