TLDR
The core of the suggested changes it to enable EOAs with contract code to reset themselves to have no contract code. Once the account is an SCA, it may return to being an EOA by removing it's own account code using a CODERESET opcode. This enables both ephemeral and persistent SCAs, removes extra work required to manage DOS and unlocks new use-cases.
Context
There are currently two types of accounts in the Ethereum blockchain:
EOAs: an account with no contract code that is tightly coupled to a ECDSA key pair holding user assets with the ability to invoke smart contract code.
SCAs: smart contract acting as a user account that holds assets and proxies user requests to other smart contracts
SCAs offer several UX improvements such as: