Added has_attributes to replace delegate_to

We don't want to conflate attributes stored in the repository with delegating
to methods. There are certain actions like change tracking or casting to
a singular value (multiple: false) that we only want to do on persisted
attributes.  The previous implementation could break in certain cases when
developers attempted to use ActiveSupport's delegate method.