refactor control_officer to dispatcher