Generate sync reports faster by delaying ToString calls until it is written to disk.

Values for the report are generated by calling ToString on members, we avoid calling this on value types for performance. By instead just copying the value we can delay calling ToString until later and avoid spending time and memory creating strings that usually go unused.
Merge pull request #7141 from RoosterDragon/sync-less-tostring

Generate sync reports faster