Initial shunting yard algorithm for AST generation. Code is in dire need of refactoring