The most important thing moving forward is without a doubt theft prevention, although theft itself is not that common, the "fear of theft" is almost an epidemic.
Its just a scary thing to have a large amount of coins on a computer, even though its offline and all precautions have been taken, especially for novice/new users this is a turnoff. Many new users wants to join not as an active user but just to store wealth/invest.
So what if we did this:
The bitcoin devs create a function that enables users to create a "holding wallet". This wallet permanently make it so that the wallet can just send a transaction to a set of addresses which users enters upon wallet creation.
Then the day the user wants to use some coins, he initiates a transfer to one of the saved wallets and he is free to spend the coins.
It think this would open many opportunities and improve safety a lot and perhaps make third-party sites like blockchain.info a safe "middle man" alternative. The coins would not be there until the owner of the coins decides to spend them and the attacker would have to have both the original "Holding wallet" and one of the destination wallets/accounts.
What you guys think? Would love to hear other ideas, everyone should put some thought into this

This is a decent idea where you have a white list of addresses. Now how do you update/create that list? This does just push the problem to needing to compromise two wallets to get to your address.