Disable comment rule

https://github.com/thoughtbot/hound/issues/370
Return blank when file content request has problems

This addresses this issue: https://app.getsentry.com/app20126465herokucom/production/group/29003068
Introduce attr_extras

* Reduces boilerplate for simple Ruby objects
* Encourages good initializer practices (just initialize)
* Makes it easy to make immutable value objects

http://rubydoc.info/gems/attr_extras
Rename _filter to _action
Handle invalid YAML config
Refactor Commenter and CommentingPolicy classes

* move related responsibility into `CommentingPolicy` to improve readability flow
* check if message was previously commented on for the changed line
Remove `db:test:prepare` step within testing documentation

`db:test:prepare` has been [removed](https://github.com/rails/rails/pull/13528)
since Rails v4.1 and @mike-burns updated the spec_helper to
automatically maintain the test schema in ff65c6c8. This step is no
longer needed.
Rescue merging with invalid custom config

If custom config contains invalid indentation merging with Hound's default
config will raise an exception:

https://app.getsentry.com/app20126465herokucom/production/group/29978234
Add CoffeeScript support

* Use [CoffeeLint] to keep to a community-supported open source standard.
* Roll out CoffeeScript to certain GitHub orgs.
* Memoize the HTTP requests.

[CoffeeLint]: http://www.coffeelint.org/
Add flag to enable CoffeeScript

* rename `Null` style guide to `Unsupported`
Handle error where Services team already exists

Error reference:
https://app.getsentry.com/app20126465herokucom/production/group/18233199
Don't check for line presence in the latest commit

This fixes an issue that Hound wound't comment when multiple commits got pushed
to a PR at the same time. As it was, Hound would check if only the head commit
included the line with violation -- resulting in no comment if the violation
came in the previous commit.

Instead, simply check if the violation on the line was previously unreported.
Add account page

* show repo totals
* show a list of billed repos
* refactor external customer data fetching to `PaymentGatewayCustomer`

https://trello.com/c/6AyMCv1t
Re-structure style guide configuration

`.hound.yml` is now used to enable/disable language support and provide the
location of the configuration file.

Example `.hound.yml`:
```yaml
ruby:
  enabled: true
  config_file: .rubocop.yml

coffee_script:
  enabled: true
  config_file: config/coffeelint.json
```

* introduce `RepoConfig` class to handle configuration fetching and parsing
* extract `StyleGuide::Base` for common style guide logic
Support legacy config
Document new configuration setup