HPCC-9689 Buffered stderr mode in IPipeProcess doesn't seem to work

There are two problems:

1. In order to avoid blocking, reading from stderr (in buffered stderr mode)
are non-blocking. Any code that uses this mode needs to be aware of that.

2. Once no more reading from stdout is happening, and we are waiting for the
child process to terminate, we need to carry on reading from stderr (blocking,
now) to sensure that all data is fetched.

Signed-off-by: Richard Chapman <rchapman@hpccsystems.com>