Hi,
There are several reasons.
1. We need a way to be able to let the user get back to their purchase history to download again or get free upgrades. The easiest way to implement this is to have a site user attached to every order.
2. To use PayPal or Google checkout we have to send the user away from our site to a third party site for payment and we need a sure way of knowing whether the returning user is the same one we sent. The user has to come back to our site for download fulfillment and we want to secure our files and make sure only the same user can get the files.
Possibly there are other solutions to these problems but they are more complex and require a lot of work. For the moment I'm focusing my efforts on making WebStore do what I need it to do with the least development effort.
Also Amazon does require registration to purchase so I figure it can't be all wrong.
Best,
Joe