Return { done: true } from .next() for completed generators.

This is a more forgiving behavior than throwing the "Generator has already
finished" TypeError. I'm not exactly sure when the spec changed, but I
like it much better now.

Fixes #158.