That's what's happening now, it's just that the "fileBasedReporters" is what's tracking the accumulation. 

So: Dredd's emitter emits an 'end' event, the reporters all listen and wrap things up, and call the `cb` in your example, which decrements the fileBasedReporters counter.

I dislike keeping track of that number, though, so I changed it to count based on the number of listeners to the 'end' event. (commit forthcoming). Does that address your concerns?

(also: using `on` instead of `once` so that one could theoretically call `run()` more than once in the js api)