Refactor Lexer and Parser into their own files
Add support for calling functions with varargs
Add support for 'return' statements