also, kind of annoying, but `next` should be a generator, not a generator function. so do a `function *(){}.call(this)` and don't bother doing `var context = this` at the top