Added documentation, tests that enumerators return enumerables when yield is called without a block.