Work in Progress

Nope. It's called every time new `data` comes in. The rational of creating a new `TapProducer` every time is that, `TapProducer` writes a TAP version line at the beginning. This way easy TestSuite has a version line.

In #2 , this is moved to `TestSuite`. I should probably merge that branch into this PR for easier discussion?