Updated SelectorFormat linter to allow selector-specific conventions

Addresses https://github.com/causes/scss-lint/issues/251

If you have an idea for a more elegant way to pass around the type of selector than including it as a parameter to two methods, let me know. Would it be better as a private variable that each visitor sets and `violated_convention` uses?
Could simplify this to:

```ruby
convention_name = config["#{type}_convention"] || config['convention'] || 'hyphenated_lowercase'
```