A lot of the parallel code assumes that process 1, i.e. the current REPL is the driver process and only uses workers (i.e., pids > 1) for computation.
Would it work for you to start the GUI in a separate worker instead? Maybe we should anyway provide a means of "reserving" certain workers (either the GUI or the REPL process), so that they are used in any parallel work distribution.
The "create_worker" function in multi.jl currently redirects all output from the worker to the clients stdout. We will have to make this step optional based on a keyword arg to `addprocs` and also provide a means of getting the stream handle given a worker id.