Made some changes

Refactored the code a little bit using visitor pattern. Now function calls can have multiple parameters. Changed the lexer rule for String_s