coroutine: fix for 8526, reorg. for new interface

svn path=/trunk/boost/coroutine/; revision=84099