Fix compilation
Added mutability smart constructors for expression and type
profiling: fix up the code that's produced so it prints out in syntax