Provides mappings between source files, generated classes (products), and binaries.
Dependencies that are tracked include internal: a dependency on a source in the same compilation group (project),
external: a dependency on a source in another compilation group (tracked as the name of the class),
library: a dependency on a class or jar file not generated by a source file in any tracked compilation group,
inherited: a dependency that resulted from a public template inheriting,
direct: any type of dependency, including inheritance.