make sure undefined value setting doesn't call constructor

When setting a value to undefined, if a schema is specified with a
function, don't call that function.