dirstatemap.dirfoldmap was recently changed to re-use a Rust iterator
that was added for the hg debugdirstate command.
That iterator was based on all nodes in the tree dirstate without an entry
only existing to hold child nodes, and therefore being directories.
However to optimize status further we may want to store additional nodes
for unknown or ignored files and directories. At that point the two users
of this iterator will want different things, so let’s make two iterators
See doc-comments in dispatch.rs.