New design test run impementation

Moved some of the logic from TestRunner into new class ExecutionManager,
which spawns threads and creates queues for transmitting tests through
input, execution and output