Fix function argument types
Throw some ICE for unimplemented ops
Replace python print with a call to the stdlib bulidin print
Give some better error messages on runtime error. I still cannot get it to catch the exceptions