Move toward goroutine-based design with fan-out listener