replace option::iter with a BaseIter impl