code: public <T extends Model> T set(String attributeName, Object value) {
          if(isFrozen()){
              throw new FrozenException(this);
          }
          Converter<Object, Object> converter = modelRegistryLocal.converterForValue(attributeName, value, Object.class);
          return setRaw(attributeName, converter != null ? converter.convert(value) : value);
      }
docs: Sets a value of an attribute.
  If there is a {@link Converter} registered for the attribute that converts from Class <code>S</code> to Class
  <code>java.lang.Object</code>, given the value is an instance of <code>S</code>, then it will be used and the
  converted value will be set.
  
  @param attributeName name of attribute to set. Names not related to this model will be rejected (those not matching table columns).
  @param value value of attribute. Feel free to set any type, as long as it can be accepted by your driver.
  @return reference to self, so you can string these methods one after another.