Ignore repeated examples in the same monitor

When two examples have the exact same text in the same monitor, it may
be impossible tell them apart, so to avoid intermittent specs, every
repeated spec after the first is skipped and notified after the suite is
run.
Print the context for skipped examples
Suite: add #ignore to ignore specs

It replaces a call to #it. Its role overlaps with #skip, but each is
reported in a group in the results:
- #ignore is a spec that should not run
- #skip is a spec which result doesn't matter
Later this can be unified.
Improve results identification

Examples that have more than one result will add only one to the total
count.
Improve reporting Examples' results

- correctly counts Examples;
- report duplicates as errors;
- Suite#ignore'd as skips
Add identification for unreacheable specs

Mark as error each Example or Context that is inside a valid Example.
build: add version number to cdp file

Version is defined in file eventdefinitions/onSpec.mon
build: cleanup 'version' target
Bump version to 0.2.0!
Improve identification of bad examples

Examples that doesn't belong to any context are now listed as an error.
Results: extract suite results to an event (wip)

By placing the results in an event external to the runner, it will be
possible to add external reporters (console, file, etc).
Add some ordering to the possible results

Create one constant for each possible result and the SpecNode can decide
which is the most important to display.
Simplify information storage in many places
Integration: make bad example worse

Example fails, skips and passes at the same time.
Results: extract SpecNode to separate file
Result: add utility methods to SuiteResult
Results: begin extraction of all results data

Report 'skip' examples from SuiteResult's data.
Result: report all results from examples

Examples can have more than one result (failing many times would be the
only normal occurrence), for now, reporting all the results. If more
than one, they are surrounded by parentheses.
Result: fix appending reasons to results
Result: extract result data to SuiteResult