An coroutine implementation for C++ using variadic templates.