This is better placed in the iterator utility module
as it acts on iterables and provides its own iterator
that fills up to (and potentially beyond) a provided
iterator.
Also adds some nice tests to make sure it keeps on
working as expected; as well as tests for other parts
of iter_utils to ensure they keep on working as
expected as well.
Change-Id: Ica90816cbdedfd87f3861a111d7a852655c1fb74