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.
Do we really want to do this for every output spec? That means every IResultWriter has to be able to handle an essentially empty file. Maybe we should only do it for nunit3 specs.