Refactoring CommunicationManager and InterruptManager.