Tests: Print stderr of invoked programs.

Makes debugging failing tests much easier.
Tests: Pull function toplevel
Add test for calling parmake with -o
When just passing on to GHC, pass the original arguments.

We accidentally passed the custom parsed ones.

To do this, refactor `getGhcArgs` so that it first removes all
parmake options (in order to preserve the original GHC options),
and then does what it did before.
Main: Remove guessOutputFilename. Fixes output filename being set when it should not.

We don't need guessOutputFilename because the final ghc pass accounts for it.
Set stderr to line buffering to prevent interleaved ghc output
Merge pull request #15 from nh2/nh2fixes

Fix parmake passing to GHC with wrong options