Switch the Mercurial support to use the command line tool.

Our Mercurial support interfaced with the 'hg' module to cat files in a
repository, but this can easily be accomplished by the command line
tool. That tool is the correct API to use, not the module. More
importantly, it resolves a licensing issue due to the 'hg' module being
GPL, which was a terrible oversight that we want to address. This will
be backported to prior releases.
Switch over to using a real hg repo instead of a bundle.

The 'hg' command-line tool doesn't entirely work when treating a .bundle file
as if it were a repo. This change extracts the bundle into a new hg repo
directory, and changes our test suite over to use it.

Testing done: Ran unit tests.
Merge branch 'release-1.6.x' into release-1.7.x
Merge branch 'release-1.7.x'