simplify and fix JIT behaviour of set! on modvars