Reported by golangci-lint
Previously the only roundtrip test was for an empty report. This test has fake data similar to that found in real reports. 'Metrics' does not round-trip exactly, so a DeepEqual workaround is added for that.
Also - Add more complicated report.json for benchmark - Break up report/topology.go - Implement our own DeepEqual for ps.Map