Started changing to popen2() for a two-way pipe

Needs non-blocking read()?