Added ability to make upgrades

This is a continued version of #5375 rebased and ready to go.

If you want a testcase go to this branch https://github.com/WolfGaming/OpenRA/tree/D2KUpgradeTest it adds an upgrade queue and some upgrades to D2K, 4 of them are used to unlock buildings/units and 1 of them is used to give a 10% armor reduction for infantry.
You can remove this, the following line, and the continue, and then let this be handled by the same code as the list-already-exists code.