`Upgrade` is pretty generic, and might cause problems in the future (if we want to add a non-trait class called Upgrade).  Many of our traits names are adjectives, so how about `Upgradable`?