Regarding upgrades, couldn't this be done via changes in the cfg. file?
Things like better ISP, thrust, lower weight, seating capacity, oxygen use, fuel capacity, ect.
Providing that it were possible to add a script (if that is the correct word?) which could edit the cfg. upon certain...