Enhance TypeExpression with intermediate forms
Enhance TypeExpression with intermediate forms

Function and methods are now treated as special intermediate
expression forms instead of a normal typed expression (with
a semi-bogus expression tree for the function name for methods)

Functions can no longer be uncalled when leaving an expression.

Hopefully this is a more stable base for rewriting other global
operations into intrinsic nodes

Trark/slp,Trark/slp,Trark/slp