Rename SpecDescription -> ExampleDescription

Clarify a little the names.
Save a copy of all examples in SuiteRunner
Save a copy of all contexts in SuiteRunner
Add id to report events
Move contexts strings up to SuiteRunner

Making SpecRunner only run specs
Remove unused variable
Remove too much cleverness
Make SuiteRunner control when examples run

The basic flow is the following:
- NewSuite -> SpecDiscover makes Suites route SpecPresent
- when SpecDiscover is completed, SpecRunner routes SpecPrepare to every
  Suite discover its examples
- when all examples are found the Suite routes a SpecReady
- when all SpecMonitors route SpecReady the Suite begin running examples