Refactor

Refactor managers using a base manager.