Any reason you chose `attr_accessor` over `attr_reader`?  They were originally `attr_reader`s.  Seems odd to make them writable.  I think keeping the narrower public interface is better since this is a legacy API, anyway.