Replace accessors with ActiveModel hooks