dirstatemap: introduce a common base for the dirstatemap class
We have two dirstatemaps class. One for the python version of the dirstate map
and one for the Rust version (that has a python wrapper to deal with some
aspect of it). We end up with duplicated code between them, so we introduce a
common base class to start migrating common code in them.
Differential Revision: https://phab.mercurial-scm.org/D11564