generate_reset_password_token User instance method

This introduces a new User instance method `generate_reset_password_token` to generate a new reset password token without automatically sending the standard email.

This is useful if you want to create new users in you application, but they should be able to set their password on their on. So instead of hacking the `UserMailer.reset_password` method, this is decoupled and you can send the email by yourself.