Split up the compiler into several files