Relax the restriction on adding new abilities to types introduced
during system package upgrades -- only the `key` ability remains
restricted.
This change is not guarded by a protocol config, because it is in the
codepath that decides whether an system package upgrade is compatible
in the first place -- i.e. if a quorum of validators do not have this
change, the proposal to upgrade to a package where an existing type
has additional abilities will not succeed. This codepath is also not
run on fullnodes (who assume that if a system package upgrade proposal
was executed successfully, validators confirmed that the upgrade was
compatible), so again, there is not a need for a feature gate in the
protocol config to coordinate the launch of this change -- it is
self-coordinating.
Test Plan:
Updated existing E2E tests and added a new one for the new restriction
on `key`:
```
sui-e2e-tests$ cargo simtest
```