added uniqueness validations for models