WIP: Try rubocop

Rubocop was discussed a bit a while back.  I thought I'd give it a shot.  This is a WIP trying to figure out what checks to enable/disable and whether or not we want to use it.

Feedback wanted.
I use both. I tend to use a lone `_` for blocks where I really don't care what that other arg is. It's temporarily scoped and doesn't matter for the rest of the method. I use `_helpful_name` for variable splat assignment to let the reader know what the structure is, but also indicate that I intend to ignore this part.

With method declarations I firmly believe we should use `_helpful_name`. When I look at the signature I generally want to know what I should be passing. If a subclass can override it, it needs to know what is supposed to be passed in. If a subclass is overriding the parent, then it should preserve the method signature.