improved user model with secure passwords