DineroFrontend: cleanup, separate threads for emptying stdout/stderr

This is an attempt to solve issue #35, by using a separate thread for stdout
and stderr, increasing the debug information produced, joining the reader
threads with timeout and giving more feedback to the user.