Print summary at the end of the run

This PR fixes #195

Print the same kind of summary at the end of the run as Cucumber-Ruby (sub counts are only printed in >0):
```
x Scenarios (x1 failed, x2 skipped, x3 pending, x4 undefined, x5 passed)
y Steps (y1 failed, y2 skipped, y3 pending, y4 undefined, y5 passed)
XmY.YYYs
```

The new class SummaryCounter is used by the Runtime class to collect the
data for the summary. The SummaryPrinter then let the SummaryCounter
print the summary before the errors and the snippets. The printout from
the SummaryPrinter is moved to after the printout from the formatters to
make the summary printed after the progress or pretty printout.