When running commands in parallel in an interactive session, forked sessions must be closed (as they are reference counted internally). It would be helpful to have a helper function like forkAndRun to handle this for us - especially in the case where an error is thrown.