update model.fn to have diffDeep, diff, arrayDeep, array, and set modes consistent with mutators