Password reset

Add ability for users to reset their passwords via email. Also allows users to edit their email and passwords within the app. Resolves #13 .
You could put the `reload` in the method chain like this: `user.reload.password_reset_token`