added codegen for return
added codegen for compound exprs

bug: does not work with all operators