Add github-linguist-grammars gem

The purpose of this gem is to package up the language grammars that are used for syntax highlighting on github.com. The grammars are TextMate, Sublime Text, or Atom language grammars, converted to JSON and given the filename `SCOPE.json`, where `SCOPE` is the language scope that the grammar defines.

The `github-linguist-grammars` gem packages up all the grammars, and also exports a `Linguist::Grammars.path` method to locate the directory containing the grammars.

To build the gem, simply run `rake build_grammars_gem`. The `grammars.yml` file lists all the repositories we download grammars from, as well as which scopes are defined by each repository. The `script/download-grammars` script takes that list and downloads and processes the grammars into the format expected by the gem.

/cc @vmg @arfon @bkeepers 
That's a good question. When no commit is specified, we fetch the current commit of the repository's default branch (usually `master`). In these particular cases, the version of the file we want does not exist in the default branch. Specifically, it is on a topic branch I created in my fork so that I could send a pull request back to the parent repository. While we wait for the PRs to be merged, we're using the versions from my topic branches.