Issue 306 - Assure NUnit can write resultfile

Fixes #306 

I am creating the result files at the start of the run in the following format,

```xml
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<test-run start-time="2014-11-19 03:52:09Z">
  <command-line><![CDATA["C:\src\NUnit\nunit\bin\Debug\nunit-console.exe" --verbose .\net-4.5\nunit.framework.tests.dll]]></command-line>
</test-run>
```

If they fail to open, an exception will be thrown and handled as-per. I do not hold the file open for the duration of the run. I only do this for running tests, not exploring them and I only do this for nunit-console, not for nunitlite.
Refactored this out to the RestoreConsoleOutput class