Created a separate BatchExecutor abstract class
Updated the implemented Executors to take advantage of batch
compilation. 

Made codegen classes a bit more Guicey.

Updated CodeRepository to take advantage of batch compilation. It is no
longer thread safe since the batch compiler should take care of that by
itself.