Moving the password reset stuff into a distinct package