ManagerManager refactory

All managers should be setup and destroyed through ManagerManager so all
running managers can recieve shutdowns and resets.