More rubocop

@localshred follow up from the last PR. This gets us nearly all the way to rubocop-completeness, but more importantly, it makes the tests run again, which I broke in the last PR :(
How come you turned this into an instance method? Using the class `attr_writer` and making this an instance method has now made it so we can't read the `client_host`, and also the class instance var is now disconnected.