I don't like Project or ProjectTransformer. Since this is a 1-to-1 compiler it makes no sense for it to depend on a Project.

Still, I think you are on to something. Maybe it would be better to separate this somehow? I'm just not sure where we draw this line?

I think this is fine for this CL. We can always improve on this later.