interpret FuncDeclaration as a VarExp

In CallExp, if its e1 is DotVarExp and pthis is a VarExp, interpreting
it to a literal would be problematic currently.
Later it should be fixed and CallExp::interpret should be simplified more.

-> Its a problem around __cpctor function call. Correctly initializing
new variable fixes the issue.
handle direct call (the flag should go in front-end)
+Support DotTypeExp
+clean
+simplify