See: https://docs.python.org/3.6/library/asyncio-protocol.html#asyncio-protocol This could make a few implementations a lot easier.