new yield support - converts simple generator function into a class with .next method