See #868 for motivation.
A minimal implementation would just have this as an optional hub.
My guess is that having the asyncio hub as the default one, at least on Unix-y platforms, would be useful, will see once I have it working. Probably best done as follow-up issue after some amount of real-world usage of the hub has found any initial bugs.