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.
Move Tooltip to Mods.Common
Disable dev and player commands for observers

Fixes #6839
Merge pull request #7157 from reaperrr/ra-common22

Moved Tooltip to Mods.Common.Traits
Merge pull request #7158 from obrakmann/fix6839_part2

Disable dev and player commands for observers
Merge pull request #7141 from RoosterDragon/sync-less-tostring

Generate sync reports faster
Allow a carryable to change his destination after being reserved
Carryall edge spawn
The carryable should not unreserve itself