Add initial cmake build system

Note: this only currently builds the codegen stuff + some ancillary stuff.

The outlook for building Java code in cmake is pretty bleak right now (it forces you to specify every source file), so we're probably going to want to shell out to another tool for that.  I have my eyes on gradle, but we could even do a shell script if need be.

The rest of the VM build is dependent on building the classpath, so that will have to wait.

Even in it's current state, I think this adds value; the cmake + ninja build is _lightning_ fast, so it gives really quick feedback if you're working in an area that it can build.

(Fingers crossed that travis.ci has ninja support)