Include full message in failures at end notifier.
Include failures at end in spec run.
Clean backtraces.
Use correct class inheritance for Context.

On initial glance this is more complicated than before since it makes
heavier use of class methods, but it actual simplifies the model by
making clearer as to which scope various blocks operate in. This in turn
enables method inheritance and let reset-ing work without copious hacks.