RuboCop support

An initial attempt at adding RuboCop support (and sneak in a minor gemspec fix).

* It’s added only to the default Rake task, does not fail Travis builds (yet? I’m happy to make it fail builds…).
* Every fixed offence is applied in a separate commit, so I can quickly revert and whitelist it (many might be unacceptable on a pure taste basis and I’m perfectly fine with reverting them).
* No logic changes; certain offences marked as `FIXME` for fixing in subsequent refactorings.
* I tried to guess which offences are actually acceptable (and explain in the comments), but I’m happy to blacklist (and fix) any of them.
* Not sure what could be an acceptable line length (I love the good old 80, as it allows me to open two files side-by-side with a sixteen-point font, but many find it too short). Please advise. :)
Ah, interesting – I actually initially had it wrapped to
```ruby
raise NotImplementedError, 
  "#{self.class}##{__method__} must be implemented"
```
but then thought ‘if we’re going to have two lines anyway, then extracting something is better than wrapping’. It seems @solnic’s preference is to have four lines instead (I’m ok with it, just surprised a bit). :)

This is also why I most often extracted things in specs to turn
```ruby
expect(a.very.long.call.chain)
  .to match(something)
```
into
```ruby
result = a.very.long.call.chain
expect(result).to match(something)
```
(except cases where it wouldn’t work/look good) – but I can gravitate towards wrapping rather than extracting in the future, no problem. :)