Make `SCMTool.get_file()` take `base_commit_id`.

Review Request #7265 — Created April 29, 2015 and submitted — Latest diff uploaded

Information

Review Board
release-2.0.x
f2fc51f...

Reviewers

All SCMTool implementations should now take keyword arguments and a
base_commit_id argument. All internal implementations have been
converted and third party tools will cause a deprecation warning if
they do not have the proper method signature.

The HgTool now takes advantage of this `base_commit_id` argument when
fetching files (since hg git diffs do not include index lines which
we use to determine what revisions to fetch). If `base_commit_id` is
provided it will override anything parsed from the diff.

The same applies to SCMTool.file_exists()

New tests, unit tests pass, posted hg diff now uses the provided base_commit_id.