We should store Files as a map[string]*FileReport type rather than sync.Map in the Report struct. We can use an intermediary struct for the concurrent operations and then build the final report with the more friendly type.
I already have working code for this and should have the PR up soon.