Coroutine function (Delay node) for c++

Note that the cost of a coroutine is almost as high as the cost of a “real” thread because you need to allocate stack memory for each coroutine just like the main cost of a thread is the thread stack.