CONTRIBUTING: remove stray sentence fragment
test-bookmark-workflow: drop check for Mercurial < 2.1

We only support Mercurial >= 2.8.
hgrepo: import mercurial.util as hgutil

An upcoming patch will import hg-git's util. This particular pattern is
followed throughout the hg-git codebase.
hgrepo: move _transform_notgit into util

This decorator will be used in other contexts in upcoming patches.
exchange: wrap pull if localrepository.pull isn't available

Mercurial rev 73b5b8312ce6 removed localrepository.pull. We don't do it the
other way round (wrap pull if exchange.pull is available) because that's been
available with a different signature since Mercurial 3.0.
exchange: wrap push if localrepository.push isn't available

Mercurial rev 4d52e6eb98ea removed localrepository.push. We don't do it the
other way round (wrap push if exchange.push is available) because that's been
available with a different signature since Mercurial 3.0.
__init__: work around exchange not yet existing in hg 2.8.x