Is there a way to fork a seperate ruby process (i.e. a clean
environment) and get output back on two differnent "channels"?

I'm trying to create a test runner that runs suites in seperate forks
to prevent possible clashing between required libs. I've hacked a
version with popen where the test results are marshalled across the
pipe, but if the code I'm testing prints anything to stdout then the
marshal dump is spoiled. I suppose I could put some sort of markup
around the marshal dump to isolate it, but it still seems very hackish.
A a secondar pipe would be better, or perhaps I can redirect the tests
code output elsewehere?

I'm not very familiar with these techniques, so help here is extra
appreciated.

Thanks,
T.