implement BaseIter for dlist (removing iter-trait)

Closes #2827