Recovery architecture

Generate a password reset token.

This phase adds the password reset token store and request workflow. Email delivery can be connected next without changing the data model.