Added password reset functionality.

Before merge, needs a few checks:

* [ ] Testing with actual API, rather than stubs.
* [ ] Styling and possibly rewriting texts
* [ ] Quality checks