Separate the observers err and out streams.
Fixes exit code handling.
Fork in launch()