Generator Async Runner.  Makes it possible to yield and wait for callbacks and continuables.