Format and refactor more as I would do it.

One of the more notable changes which is worth explaining is the removal
of the exit channel. Basically, the process will live until all the
tasks exit, so there’s no point in the exit channel—it’s entirely
acceptable to just let main() finish.

Incidentally, even if the channel were staying, it’d be worth while
changing it from using bool to using ().