add; auto insert main args and return_type
add; insert global commands into main
add; error message for expressions outside of main
add; remove new keyword (new List)

use (List) or (Int 0)