Add improved coroutine macros.
Update coroutine example.