Don't recompute srcFiles for input files
Make SrcFile opaque
Separate concerns and type alias for documentation