Implemented a lot of the expression compiler skeleton