Righty ho, bit of detail, just a bit of general ramblings really:
To begin with. Simplicity. An application of this sorts really needs to be a simple to use, so even the most dim users should be able to pick up the whole user interface within a few seconds.
Instructions for bought games that require Steam, for example, should detail how and why the system is needed, as people don't want to go on the internet all the time to play their games.
The actual application shouldn't take up much space at all, and shouldn't hog memory or CPU, so a very basic application running in your background that you don't have to worry about.
It needs to be secure, for purchases of games as well as keeping your personal details safe and not available to anybody or 3rd parties.
Accounts
Nobody likes to have lots of accounts. If one account full stop was possible for everything, I'd guess a lot of people would be happy. The problem is, if we get lots of developers and Steam-like packages, we're going to try and keep the same account names and systems to help people not forgetting, but I don't think that's a massive problem as long as you can retrieve account information via telephone or e-mail support with a little proof from you.
Having an account of sorts is a massive advantage to those people that don't want to lose their games or get them damaged. Your account is never going to forget what games you own or are entitled to.
Updates
Steams update system does annoy some people. Your main advantage to a content delivery system like Steam is that you don't need to worry about finding the latest patches for your games, just switch on and you'll be up to date. Problem is, some people don't want to be forced to update their game to play it. On a slow connection, it could take hours to get a big update, meaning that they've got to wait quite a while for this sytem to finish downloading.
What should be implemented is a system that prompts the user to say if they want to update their game to the latest version, or if they are happy with what version they are playing. It doesn't really matter for single player games.
Problems & Quibbles
This is where the fundamental problems come up with this kind of system. Traditionally, games and the internet meant that you'd be playing multiplayer, no single player. If you weren't on the internet, you'd be playing single player. But these systems like Steam need you to be on the internet pretty much constantly to get it working.
This means you could argue that you want to play your new single player game offline, without having to get onto the internet to validate the game. I would agree with that. For example with Half-Life 2, some people got the game, not aware that you needed the internet connected to even play the game. If the game is going to be just single player, it needs to be fully workable offline. Then any online capabilities should be activated or installed in the form of Steam etc, so that you have your account and all that sorted only when you want to install patches or play multiplayer.
The Future
One big problem you have with any content delivery application such as Steam, is look ahead 5 or even 10 years, which is a long time for gaming, and many things can change over that time. If Valve go bust or get absorbed, you've got the issue of what happens to all these Steam servers, are they going to run on indefinately? Or will the system get merged into another content delivery tool?
What you don't want to see is the service just being disconnected. You'll have a lot of people getting rather angry that they can't even play their games they own because they can't get onto their account, as the servers are all off. In this extreme case, there would need to be a contingency plan, where owners were given special patches / applications to run all their own games locally, or all the games made freeware or similar. It would be very, very difficult if that day ever came, so hopefully wont in the near future.
Other problems in the future is that I think a lot of publishers are going to get onto the bandwagon and have their own content delivery systems. What we really don't want to see is a system in place for each minor developer and game, meaning having 10+ different systems all with different accounts and passwords. Each major publisher really needs to have a good think about these systems, as there is money to be made from them, but also a lot to be lost if the systems are not capable and games not popular.