(a) when wf enabled, we write an entry to the wf journal saying which value changed (old vs. new), (b) added wf_trace_column_change__begin/__end that trace a list of columns (which is augmented with the dynfield attributes), (c) each changed column calls the im_trace_column_change callback (only fires on changed entries)