For the sake of not changing the public API, I'd like to at least add an instance reader method for base_class. You can just define it right above the `class << self` line. No need to do the writer method since that was never intended to be public and will just screw things up if the base_class changes at run time.

```ruby
def base_class
  self.class.base_class
end

class << self
  # ...
```