a simple class to run an external command and get the output and error streams, courtesy of Michael Dewsnip