fixes Binop case return type
gets it compiling through comments, renaming all .mli to .ml, and adjusting Makefile
for statement does not take iter lists anymore, worked on chunks 2 and 3
chunk 1 remains mostly same
Change helper functions
rename check_stmt --> stmt
Merge pull request #29 from quarklang/semantic-chunks-2-3

for statement does not take iter lists anymore, worked on chunks 2 and 3
adds MatrixLit to sast
adds code for semantic.check_program(). also ...

renames expr and stmt to check_*

unifies argument order of check_expr and check_stmt. env is now 2nd arg

check_stmt returns a stmt,env tuple.
adjusts check_exprs to account for returning env. cleans up syntax in many places
check_expr() now returns Lit * env; in otherwords, no type in the tuple. Also fixed check_array and other bugs
adds get_type helper function for getting the T.vartype of Sast expressions
Start check_stmt
Merge
sigh...
Change some helpers
Finish declaration first run
Copied the skeleton in generator.ml to semantic_debug.ml
Add A. T. prefix
Add return