Add cpu profliing. Optimize mark.String (25% -> 5% cum time)
Make Mark a wrapper. Fiddle with Need Map for perf.
Twiddling mark hash for perf
More tweaking. Canonicalize subst pointers