Pulled validations into extensions methods for brevity.