M: ProjectFile: change interface to abstract class + interface.