Testsuite: open/close stdin/stdout/stderr explicitly

Authored by thomie on Jun 20 2016, 7:36 AM.

Description

Testsuite: open/close stdin/stdout/stderr explicitly

This allows run_command's to contain |, and no_stdin isn't necessary
anymore.

Unfortunately it doesn't fix T7037 on Windows which I had hoped it would
(testsuite driver tries to read a file that it just created itself, but
the OS says it doesn't exist).

The only drawback of this commit is that the command that the testsuite
prints to the terminal (for debugging purposes) doesn't mention the
files that stdout and stderr are redirected to anymore. This is probably
ok.

Update submodule unix.

Differential Revision: https://phabricator.haskell.org/D1234