Keep in mind, if you want play the game at a different location, your account still works fine. If you want to sell the game, just remove it from your steam or create a default login for the buyer.
People just hate Steam because they don't understand it. It's a great thing for developers, and yes more should use this type of system.
Having to use Steam for single player is a great idea, the issue being piracy.
Having a LAN center pay for each copy is a good idea, just like licensing since they are making money. This can be done with the month to month system.
You probably think I'm a developer or something, but in all honesty, most people I know *cough* have not paid for a single player game in YEARS, and something should really be done about it. However, if more developers do go to a steam type system, THEY NEED to release demos before the full comes out!!!