codegen: MILESTONE: multi-pkg and multi-file compilation to IR!

- Rebuilding IR code generation with new visitor pattern
ccode: changed C-code generation to visitor pattern like IR generation
codegen: added code generation for if statements and some other basic AST items
ccode: fixed extra newlines
ccode: charliteral and better compound statements
ccode: generation type defs
ccode: generating binary expressions
ccode: generating unary expr
ccode: generating while and break statements
ccode: generating labels and goto stmts
ccode: generating do while
ccode: preparing for single module
ccode: generating all c-code in single file + fixes
ccode: include foreign packages
ccode: first generate all includes
ccode: generate correct include
ccode: fixed ccode generation for all examples
ccode: added assert
ccode: fixed scope of vars
ccode: generating for stmt