Since I joined this forum, I've seen more than one thread where someone forgot their passphrase to their encrypted wallet and wanted help cracking it.
What if as an option, a user could enter the address of, say, a paper wallet beforehand.
This is pretty much what Armory does. However, it doesn't need to actually generate the transaction.
You have 1 root key and all public and private keys can be generated from that. You can then print that key to a sheet of paper and keep it somewhere safe.
If you give the software your root key, then it can scan the chain and find all coins that are yours (and send them to an address).
Then whenever the user enters the passphrase to decrypt the wallet, a transaction is created and signed but not sent - that would send all inputs to that address. This transaction is then stored in the data directory.
This would have to be one transaction per coin output. Effectively, when a coin is received, a tx is created to send it to some other fixed address.
You still need to secure that other address though.
So, you don't get much benefit over a deterministic wallet.