Production icons

Changes how the production queue gets its icons, the icon name is no longer in the renderer and has been moved to the buildable trait. There is also a  new upgrade rule that converts all yaml files to this new format.
We will now crash when there is no trait `Tooltip` and `Buildable` so these have to be made optional with TraitOrNull checks or you need to add `Requires<TooltipInfo>` to BuildableInfo. You also need to be aware that some missions still use `-Buildable:` in map.yaml which will I also expect to lead to problems.