Preserve cell variables across calls to yield.

In a generator function that has cell variables, ```$cell``` is a local variable.  So, if the generator function yields, anything stored within ```$cell``` will be lost.  This fixes that by keeping the cell variables in the generator object, so that they will be preserved across calls to yield.