started work on static, semantic analysis (I'm updating some of
the nodes in ast.h to contain useful information for stage3 -
e.g. type of expression)

I also plan to add some pseudo operations such as casting
and obtaining value from reference explicitly into ast during
sematic analysis