Having attr_readers in here seems like a red flag.