dirstate-tree: Add `NodeRef` and `ChildNodesRef` enums
They are used instead of `&Node` and `&ChildNodes` respectively.
The `ChildNodes` type alias also becomes a similar enum.
For now they only have one variant each, to be extended later.
Adding enums now forces various use sites go through new methods
instead of manipulating the underlying data structure directly.
Differential Revision: https://phab.mercurial-scm.org/D10747
Mercurial's documentation is kept in reStructuredText format, which is
a simple plain text format that's easy to read and edit:
http://docutils.sourceforge.net/rst.html
It's also convertible to a variety of other formats including standard
UNIX man page format and HTML. You'll need to install Docutils:
http://docutils.sourceforge.net/
Use the Makefile in this directory to generate the man and HTML pages.