Basic IR. Still working on function calls, else blocks and operator precedence.