Simplify tracking of test durations by moving Stopwatch code out of Case and into ExecuteCases.
Add PassResult and FailResult to describe completed test cases.  Listener receives these for CasePassed(..) and CaseFailed(...) respectively.
Fix TeamCity integration so that durations are reported for failed tests too, rather than only for passed tests.
Add RedirectedConsole, which captures any Console.Out and Console.Error output within a using block.
Listeners receive a copy of the console output for each completed test case.  Tests which redirect Console.Out or Console.Error without correctly returning them to their original value no longer damage Fixie's own ability to write to the console.  Test coverage for ConsoleListener and TeamCityListener.
OrderTests write to the console, in order to verify that TeamCity can correctly report on test console output.
Move RedirectedConsole to appropriate namespace.  Remove duplication between Fixie.RedirectedConsole and the older Fixie.Tests.RedirectedConsole.
Move ConsoleListener and TeamCityListener out of the root Fixie namespace.
Rename Result to AssemblyResult, to distinguish it from other *Result types.