rerefactored useraccountmanager and added comments