def add(name, options = {}, &coercer)
      name  = name.to_sym
      value = Attribute.new(name, options, &coercer)
      clone_with do
        @attributes  = attributes.merge(name => value)
        @transformer = nil
      end
    end
def add(name, options = {}, &coercer)
      name  = name.to_sym
      value = Attribute.new(name, options, &coercer)
      clone_with do
        @attributes  = attributes.merge(name => value)
        @transformer = nil
      end
    end
Initializes the attribute from given arguments
 and returns new immutable collection with the attribute

 @param (see Attribute#initialize)

 @return [AttributesDSL::Attributes]