Improved dlist code removing intermediate iterators