The reason they use such a bad default is because a lot of programs require admin rights to run and your average user doesn't want to bother (or doesn't know how to) use the "runas" feature.
No central registry system.
This is the engine that let's windows run what so many users call useful programs. What I don't get is why MS didn't design windows to use 2 class branches on the reg. It has one for local_machine, but I see that it needs one for current_user as well. Then they should include under user's profile a "My Installed Programs" folder. This would allow users to install all the little cutesy fartsy programs that they usually whine that they need admin rights for, and when I log in as Admin, I don't have hijacked toolbars and everything else. Of course, this would require a massive rewrite of the API libs (okay, this is a minor rewrite) and all of the MSI/installer files in use almost globally, which write the regkeys, because there would need to be two apis, one for LM_Class_Register and one for CU_Class_Register as well as the token unreg functions, etc.
Can anyone else find the flaws in this, in that this process would really allow people to do what they're wanting, where the viruses and such that piggyback in would only have CU access, not Admin. Also, the bloaters on the system could easily be identified:
"Who has a 15GB user's directory? Okay, time to talk to xxxx." Maybe they have a big program that would be usefully installed on the LM, or maybe they use that big program on several machines, but they don't want to install it on every machine on the network (for roaming profiles) and they actually installed it to a "C:\USER_NAME\Programs" directory instead of to "C:\"&&WINDOWS_DEFAULT_INSTALLATION_PATH**&&"\Programs". This would imply a user that would probably be better classified as a "Power User" because they know what they're doing if they differentiate drive locations like this, but that's another threaded discussion.
With any luck, MS has foreseen this and decided to write it in, but in all likelyhood, no. Sadly, it's going to be no. Mark my words.
Back to your point, the registry is the better tool for these users (those who are not admin, e.g. home users) needs, and I wholeheartedly agree with your point. How many users could be expected to find every .rc, .ini, .cfg or whatever you want to call it on their system if The Registry was not around. But the flipside is, how many users know about The Registry? Yeah, they've heard about it, and how it can cause problems. But can they navigate it? And Windows does have plenty of CL tools for doing things with the system. The register/unregister dll program runs either as an api or CL.
Insofar as Mac goes I definitely agree that the install process is much easier, as is working with the .sit (right, or sft?) format. But users are becoming more familiar with the whole compressed format on Windows.
Okay, now I'm donning my flame-retardent suit, go!
** Where this is applied via my plan, such that instead of "C:\Program Files" you also have "C:\Documents and Settings\USER_NAME\My Installed Programs" etc, etc, etc.