splitting compiler into compiler and parse

a package is born!  this will facilitate cutting the front end's
dependencies on the engine, since we don't want Tortoise depending
on our JVM back end code