add new git-commit-link function and handlers

there's some duplication here, mainly in the contents of git-link and git-commit-link. i figured i'd send this first as a jumping off point, and we can refactor if we want.

thanks in advance!