repurpose help-mode's xref support

Previously we had our own history mechanism, which was more complicated
and leaky, and was specific to the commit buffer.  Now we wrap around
`help-mode's xref support.  Unlike the old implementation, the new
wrappers can easily be used by other Magit modes.
use xref support for diffs too
Merge branch 'pr/xref'