added more validations used active record methods like callbacks hashed passwords etc