Make className part of the state of the dot.
Implement removing dots by completing a valid chain.

This is using a purely channel-based approach.
Add transition subscriber, but it isn't right.

Need to step away and do some thinking on the matter.
Try sending messages to channel in will-update.
Try using a separate chan for transitions.

This is a hopeful attempt at cleaning up the really weird issues with disappearing dots.