Add model validations and tests