Defer getting file contents until needed

This will avoid calling the API to get file contents from GitHub as the
`CommitFile` object is constructed. Also, allows us to avoid getting contents if
file is removed.

* introduce `Commit` class responsible for specific commit
Guard against decoding nil file content

Causes this error: https://app.getsentry.com/app20126465herokucom/production/group/26845983/
You get reviewed by Hound
Disable Skip cop
Provide email address to Intercom
Guard if cotents of the file are nil
Guard about potentially missing data from GitHub

Addresses:
https://app.getsentry.com/app20126465herokucom/production/group/18572350/
Bump Ruby version to 2.1.2

https://github.com/thoughtbot/hound/issues/334
Update build badge

* Only show build status for master branch
Charge for private repos

https://trello.com/c/Rq3YdC3K/174-charge-for-hound

* The price for private personal repos will start at $9/month
* The price for private organization repos will start at $24/month
* Stripe will be used to collect payments
Add favicon

* Add 32x32 favicon.ico
* Add precomposed icon for iOS devices

https://trello.com/c/tWj6aLr0
Refine styles for mobile

* Header has fixed position
* Update search bar placeholder text and styles
* Move "Repo" link into account list
* Decrease font size on mobile

https://trello.com/c/8lxiMPx3
Remove placeholder mixin use from repo list
Fix typo in EmailAddressJob spec

Looks like a copy-paste error - I just happened to open this spec and noticed the class name was incorrect, so I fixed it.
Update footer
Merge pull request #347 from swanson/patch-1

Fix typo in EmailAddressJob spec
Disabled percent literal delimiter check

* Remove pending tests
Create Terms of Service

https://trello.com/c/It3Tlqkn/323-create-terms-of-service
Create privacy policy

https://trello.com/c/QflIiU3K/201-create-privacy-policy
Broaden scope of houndable files beyond Ruby

A pure refactoring that should not add or remove behavior. Intended to make it
easier to add new style guides such as CoffeeScript, JavaScript, Sass, and
Markdown.

* Remove `relevant_line?` method that duplicates `modified_line_at`.
* Replace `ruby?` method with builder that determines style guide based on file
  extension.
* Remove extra `FileViolation` object, which added to the chains of objects and
  things to stub.
* Collapse `LineViolation` into newly named `Violation`.
* Introduce `StyleGuide::Null` object to fall back on for files we can't
  review.
* Add class documentation to describe responsibilities.
* Refactor commenting APIs to use fewer method parameters, more objects, fewer
  stubs in specs.