Overlord levelup solution

@jmmastey @bwthomas
Not 100% on this, but it seems to be that if you're declaring your own setter methods, you should use `attr_accessor` at the top of the class instead of `attr_reader`. Using `attr_reader` gives the impression that these methods cannot be set anywhere, but since you are defining the setters anyway, this is clearly not the case. And if you change that, you can still overwrite the default implementation by defining these methods here, as you already have