I finished off almost all of the Ship Upgrade functionality today. When ships upgrade, they use the correct amount of Starship Structural Units that must be in the cargo hold of the ship that's being upgraded. I changed this just to make my life easier on the code, plus it frees up warehouse space in your colony.
The only thing that's missing is the ability for ships belonging to another player to use your shipyard via Upgrade Authorizations. To do this I need to create the Shipyard screen, but I got distracted by stubbing out the Market screen as well.
With Upgrade Authorizations, you'll be able to allow another player to use your shipyard to upgrade to a certain level at a certain price. You'll also be able to make it an Open shipyard that anyone can use at a certain price. Along with the maximum level, you'll also be able to set a limit on the number of times a player can use it.
The Friend or Foe lists will also come into play here with options to allow ships on your Defend/Support lists to upgrade and of course to prohibit ships on your Enemy list from using the shipyard.