Added the notion of a Java Project. Now the dependency report can return a java project, which contains all comp units, types, and methods of the input project.
Added the notion of packages (although depReport does not report package dependencies yet)
Now packages know their parents. Method now knows which comp unit it belongs to
Commiting after working offline for a long time (sorry for the overloaded/tangled commit). Main things I recall include building a more robust and flexible filtering mechanism (filter package), fixing important bugs in the Cacher annd in the CallDependencyExtractor (some few units tests also added) and enhancing the domain model with abstract classes and interfaces for key concepts (involved moving classes around)