git_handler: lazy-load mapping

Loading the mapping was costing about half a second for a user on IRC
on the pidgin repo. There's no reason to load this data aggressively.

--HG--
extra : transplant_source : %22%20%00%0Bc%E58%3A%0A%CF%EFg%2C9%90%B2%EC%A3o%B1
overlaychangectx: fix compatibility with mercurial 2.4-rc (no attribute _repo)

This isn't a real implementation of phases support.  Rather, it's just enough
to avoid the traceback.

Traceback (most recent call last):
  File "/usr/local/share/python/hg", line 38, in <module>
    mercurial.dispatch.run()
  File "/usr/local/lib/python2.7/site-packages/mercurial/dispatch.py", line 28, in run
    sys.exit((dispatch(request(sys.argv[1:])) or 0) & 255)
  File "/usr/local/lib/python2.7/site-packages/mercurial/dispatch.py", line 65, in dispatch
    return _runcatch(req)
  File "/usr/local/lib/python2.7/site-packages/mercurial/dispatch.py", line 88, in _runcatch
    return _dispatch(req)
  File "/usr/local/lib/python2.7/site-packages/mercurial/dispatch.py", line 741, in _dispatch
    cmdpats, cmdoptions)
  File "/usr/local/lib/python2.7/site-packages/mercurial/dispatch.py", line 514, in runcommand
    ret = _runcommand(ui, options, cmd, d)
  File "/usr/local/lib/python2.7/site-packages/mercurial/dispatch.py", line 831, in _runcommand
    return checkargs()
  File "/usr/local/lib/python2.7/site-packages/mercurial/dispatch.py", line 802, in checkargs
    return cmdfunc()
  File "/usr/local/lib/python2.7/site-packages/mercurial/dispatch.py", line 738, in <lambda>
    d = lambda: util.checksignature(func)(ui, *args, **cmdoptions)
  File "/usr/local/lib/python2.7/site-packages/mercurial/util.py", line 472, in check
    return func(*args, **kwargs)
  File "/usr/local/lib/python2.7/site-packages/mercurial/commands.py", line 3942, in incoming
    return hg.incoming(ui, repo, source, opts)
  File "/usr/local/lib/python2.7/site-packages/mercurial/hg.py", line 525, in incoming
    return _incoming(display, subreporecurse, ui, repo, source, opts)
  File "/usr/local/lib/python2.7/site-packages/mercurial/hg.py", line 494, in _incoming
    displaychlist(other, chlist, displayer)
  File "/usr/local/lib/python2.7/site-packages/mercurial/hg.py", line 524, in display
    displayer.show(other[n])
  File "/usr/local/lib/python2.7/site-packages/mercurial/cmdutil.py", line 670, in show
    self._show(ctx, copies, matchfn, props)
  File "/usr/local/lib/python2.7/site-packages/mercurial/cmdutil.py", line 691, in _show
    label='log.changeset changeset.%s' % ctx.phasestr())
  File "/usr/local/lib/python2.7/site-packages/mercurial/context.py", line 203, in phasestr
    return phases.phasenames[self.phase()]
  File "/usr/local/lib/python2.7/site-packages/mercurial/context.py", line 201, in phase
    return self._repo._phasecache.phase(self._repo, self._rev)
AttributeError: 'overlaychangectx' object has no attribute '_repo'
Release 0.3.4
Added tag 0.3.4 for changeset 586b7aa96466
git_handler: defend against unexported revisions in tag exporting

--HG--
extra : transplant_source : %7EW%14f%7CF%02xa%92R%F8%88c%D9%D4%91%22%DC%A3
git_handler: add bookmark compatibility with new bmstore (issue #60)

Prior to this fix, tests against the latest hg codebase would fail with:
creating bookmarks failed, do you have bookmarks enabled?