A Shunting Yard Calculation Engine