misc clean-up, add yield_from for simpler range comprehensions