Added some comments and removed some not_nil! now that the compiler is a bit smarter :-)
Disable transforming a block to a function pointer (didn't work well)
Fixed wrong error message location for "unterminated call"
Codegen: don't create temporary variables for arguments that are never assigned to
Codegen: removed useless "alloca" basic blocks if they only just to the "entry" basic block
Codegen: don't generate unnecessary code for if and calls
Small code change and better comment
Allow dumping an llvm module by specifying a string in DUMP env var
Fixed #119: make sure to always downcast call obj and args because a dispatch might be reduced to a single call