OldNewMap used to have its own map implementation. Given that the file uses C++ now, it is easy to use a C++ map implementation instead. This simplifies the code a lot.
Going forward it might make sense to remove the OldNewMap abstraction or to split it up in two (currently, NewAddress.nr has two different meanings in different contexts which is confusing).
No functional changes are expected.