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.
Works for me: cfea04effcca40607c4904357ad7e6d15d0b40b8 (after c92e211ea60e9e75331047921c57423c31e66997 which reverts the unnecessary plumbing).
I could have helped faster if you posted a testcase, rather than me having to write one myself.