refactoring the compilation object.

added a compilation unit that contains the filename, content and ast for
a given compilation.