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
This doesn't seem to be consistent with other `it` descriptions. What do you think about grouping tests by CoffeeScript and Ruby to make expectations clear?

Something like this?

```
describe "#enabled_for?" do
  context "for Ruby" do
    context "with invalid config format" do
      it "returns true" do
        ...
      end
    end
  end
end
```