Working shunting yard algorithm
Fixed a bug where only the first occurrence of a variable would be evaluated. Prettier design