making upgrades saveable
changed a lot of stuff