in order to get code shaped up to be put into reusable functions notably a lot of the code around websockets uses it >_> I think because it's trickier to go from event land back to straight-line async/await