> email address seems pretty vital for any kind of future communication
That's actually a reason many users don't like supplying an e-mail address. They don't want an ongoing relationship with a website, they just want to buy a box of widgets today. What I do in that case is provide a customised e-mail address and then blacklist it after the item arrives.
As for using e-mail address as the account identifier, if you do that please ensure it can be changed everywhere in your system.
I recently moved to a new domain ( cheaper annual renewal ) and whilst Amazon and eBay were painless for changing e-mail address, many other large operators were messy. Tesco, for example, is still sending half of its communications to my old address.