rhg: use persistent nodemap when available
… for node ID → revision number lookups, instead on linear scan in a revlog.
Differential Revision: https://phab.mercurial-scm.org/D9520
Set up
$ hg init repo
$ cd repo
Try to import an empty patch
$ hg import --no-commit - <<EOF
> EOF
applying patch from stdin
abort: stdin: no diffs found
[10]
No dirstate backups are left behind
$ ls .hg/dirstate* | sort
.hg/dirstate