Reset password

Implemented the password reset functionality. Resolves #22.
don't think you need the `self.`s in these two methods