added addD2, addE2, addSD2, and addSE2
improved addbefore and addSbefore
improved mechanism for unsafe wrappers
consts normif :: ifex => ifex => ifex => ifex
primrec
"normif (CIF b) t e = IF (CIF b) t e"
"normif (VIF x) t e = IF (VIF x) t e"
"normif (IF b t e) u f = normif b (normif t u f) (normif e u f)"