RFT: Refactored UserManager and RegistrationManager to use abstract class.
ADD: Add password forgotten functionality.

Deployment Information:
* Database Update required.
* Requires setting of TS constants for mail handling on the page where the forgot password plugin is added.