Rework Subprocess spawning, add more unit tests
Rework Subprocess spawning, add more unit tests