Too many of these listeners that sit in their own goroutine waiting for
messages; try to refactor some of that out into a QueueProcessor
interface.