async/await communicating sequential processes
a pooling mechanism built on top of csp
async/await finite state machine factory