The new coroutine stuff is really just syntactic sugar for "yield from", which has been around for a few versions now (and in turn is little more than syntactic sugar for "yield"ing repeatedly).
But you don't return more than once from a coroutine. You can suspend it as often as you like, and that's what "await" does.