Process pool to replace command execution threads.

Replaces #891 (which, pre cylc-6, targeted the wrong branch)

A process pool to handle execution of job submission, event handler, and poll and kill commands.
Replaces batched command execution in threads. 
This test was relying on the daemon environment being available to background jobs on the suite host - which is bad form anyway, but not even possible when using a process pool.