Password reset [PD-312]

Not sure if there was anything else to be fixed with this one.

I went to write tests for it and realized that the tests are all there-ish except for the user flow ones which are nearly impossible to write without selenium.

All tests pass.