updated signup model with validations