Rebases all changes on top of the work done by Oleg in mainline.

This gets a few of the more basic reporters working.

Moves some of the common bits out, work on Default Reporter

There's still some bad results in the final report, though.

We aren't logging passes, fails, errors so we get invalid
statistics at the end of the test run.
Fixes up the default reporter and gets it reporting test stats
Fixes a few minor issues
Merge pull request #77 from csaunders/default_and_progress_reporter_patches_plus_extras

Default and progress reporter patches plus extras