Refactoring
UI and ThreadDecisionMaker work in different threads.