start implementing cookbook show

...continue with logging download count and making it look gud
Implement cookbook download paths

This removes the cookbook_versions_helper and uses the routes for downloading a
cookbook. These routes redirect to the location of the tarball for downloading.
Knife follows redirects, meaning we can track the download count on each
specific cookbook version.
Update the cookbook show view to be more semantic.

This implements a joke of a method CookbookVersion#ghfmd_readme that should be replaced
with the actual readme content of a cookbook version that gets parsed with
GitHub Flavoured Markdown.
Add download_count to Cookbook.

This gets updated whenever a cookbook version gets downloaded.
Sketch README extraction
Render cookbook readmes as markdown if they are markdown.

todo: make this support other filetypes probably
okay rubocop, you win this time
Seed READMEs along with each seeded cookbook
Clean out and move helpers and specs for markdown.
View structure for collaborators and platforms
Set README content defaults
Link to the cookbook external_url if it is present.
Extract and show a cookbook's supported platforms
List cookbook versions on cookbook show as an ul.
Refactor building supported platforms

The previous approach did not honor the circular validation between
cookbook and cookbook version
Validate platform version constraints
Tighten scope of let in CookbooksController spec