Add "github_url" Jekyll tag for creating "edit this page" links

This commit adds a new {% github_url %} tag plugin. On any page, it
returns an "edit" URL to that page on GitHub.

- If the page is in one of the external sources (as defined in the
  source/_config.yml file), it will link to the source file in that
  project's repo, on the master branch.
- Otherwise, it links to the source file in the puppet-docs repo.
- This requires a monkey-patch to Jekyll! In this commit, that patch is
  applied to our captive copy (see the commit just before this one); in
  Michael Hall's bundler-centric toolchain rework branch, this will be
  done with Git, like everything else around here.
- Keep in mind that edits are immediate if you have push rights to the repo;
  if you don't have push rights, edits result in a fork + pull request.
- The external sources in _config.yml MUST follow a specific format! To recap:
    url: /puppetdb/master (An absolute URL prefix for affected docs, beginning with a slash.)
    repo: git://github.com/puppetlabs/puppetdb.git (A git repo URL, suitable for git clone.)
    commit: origin/master (Any valid Git refspec. Prefer remote branches, for auto-updating.)
    subdirectory: documentation (A directory, relative to the root of the repository, not ending with a slash.)
Add "Edit this page" links to every template