A very simple Kaleidoscope compiler from http://llvm.org/docs/tutorial/