immutable fields of ModuleVar
some more unrolling heuristics

and a pretty big fix in vector that makes dehomogenization one copy
cheaper