step_by : Iter(item), U64 -> Iter(item)
Returns an iterator that yields the first item and then every nth item
after it, skipping the n - 1 items in between. A step of 0 yields an
empty iterator.
expect Iter.fold(Iter.step_by(List.iter([1, 2, 3, 4, 5]), 2), [], |acc, item| acc.append(item)) == [1, 3, 5]
expect Iter.fold(Iter.step_by(List.iter([1, 2, 3]), 0), [], |acc, item| acc.append(item)) == []