Add ability to download and install chef from GitHub.

This replaces https://github.com/test-kitchen/test-kitchen/pull/473, with some minor changes:

* Uses the tag `:github`, instead of `:chef_git_url`, and set `:github "<user>/<repo>"`
* Requires `:branch` key if `:github` key is used. `:branch` can be set to a branch name or commit sha.
* Overrides `:require_chef_omnibus` to `true` when downloading GitHub source code, if set to `false` or `nil`
* Will fail immediately if the source code cannot be downloaded from the generated url or if the chef gem cannot be built.

Works on Ubuntu 12.04 on both vagrant/virtualbox and ec2. Works on CentOS on vagrant/virtualbox and I'm pretty sure ec2, too.

@fnichol, @sethvargo, @sersut, @lamont-granquist, @adamedx, @danielsdeleo
yeah i omitted the "git" config param because i figured it'd be busted...

@mcquin i'd say drop config[:git] for now, it won't work the way things are and i'd kinda like to ship and not squirrel on getting the git binary installed (particularly since in old ubuntu git is the Gnu Interactive Toolset and git-core is the real git, etc, etc, edge cases...)