Bug 794984 - [mozprocess] Add ability to separate stderr from stdout, r=ahal

A new parameter called 'processStderrLine' is added. When specified, stdout gets processed by the
'processOutputLine' callbacks and stderr is processed by the 'processStderrLine' callbacks. When
not specified, stderr is redirected to stdout which is the same default behaviour.

A side effect of this is that mozprocess now uses three threads to process output. One thread each
for stdout and stderr that reads output lines and stores them in a Queue as fast as possible, this
makes sure there is no blocking in stdout.write(). A third thread executes the callbacks.

--HG--
extra : rebase_source : d4601a6ae21ca61bfdca308c68155ce2c2e09e43