dirstate: move management of nonnormal sets into dirstate map
The dirstate map owns the nonnormal sets, and so should be the class to update
them. A future implementation of the dirstate will manage these maps
differently.
The action of clearing ambiguous times is now entirely controlled by the
dirstate map, so it moves there too.
Differential Revision: https://phab.mercurial-scm.org/D1341
test-addremove.t
test-ancestor.py
test-backwards-remove.t
test-bheads.t
test-bisect2.t
test-bookmarks-merge.t
test-bookmarks-strip.t
test-branch-tag-confict.t
test-casecollision.t
test-changelog-exec.t
test-check-commit.t
test-check-execute.t
test-check-module-imports.t
test-check-pyflakes.t
test-check-pylint.t
test-check-shbang.t
test-commit-unresolved.t
test-contrib-check-code.t
test-contrib-check-commit.t
test-debugrename.t
test-diff-copy-depth.t
test-diff-hashes.t
test-diff-issue2761.t
test-diff-newlines.t
test-diff-reverse.t
test-diff-subdir.t
test-dirstate-nonnormalset.t
test-doctest.py
test-double-merge.t
test-duplicateoptions.py
test-empty-dir.t
test-empty-file.t
test-empty.t
test-encoding-func.py
test-excessive-merge.t
test-hghave.t
test-imports-checker.t
test-issue1089.t
test-issue1877.t
test-issue1993.t
test-issue612.t
test-issue619.t
test-issue672.t
test-issue842.t
test-journal-exists.t
test-locate.t
test-lrucachedict.py
test-manifest.py
test-match.py
test-merge-default.t
test-merge2.t
test-merge4.t
test-merge5.t
test-permissions.t
test-push-checkheads-pruned-B1.t
test-push-checkheads-pruned-B6.t
test-push-checkheads-pruned-B7.t
test-push-checkheads-superceed-A1.t
test-push-checkheads-superceed-A4.t
test-push-checkheads-superceed-A5.t
test-push-checkheads-superceed-A8.t
test-push-checkheads-unpushed-D1.t
test-push-checkheads-unpushed-D6.t
test-push-checkheads-unpushed-D7.t
test-rename-merge1.t
test-rename.t
test-revlog-packentry.t
test-run-tests.py
test-show-stack.t
test-status-terse.t
test-terse-status.t
test-unified-test.t
test-update-issue1456.t
test-update-reverse.t
test-xdg.t