Added overdraw visualization.

ah here's the register disposable -- move that into the addVisualizer method. The visualizer is tightly bound to the playback (can't outlive it), so having the register need to be called by the code calling into playback just risks leaking if it's missed.