Add new option 'register and continue' to checkout process
Update gateway template

The assumption is that most customers will not have an account (unlike
Amazon, eBay etc.), hence the default is to create an account.
The wording has been changed to hopefully be more approachable.
Standardise email address handling

All code handling email addresses has been update to use a new function
normalise_email, to have one consistent way of handling email addresses.

This function lowercases the domain part of an email address if it can
find an @, so it works on partial addresses as well.
Prevent checkout as guest/new user if email address exists

Before, it was possible to enter an existing email address and continue
the checkout process as a guest, which is a bug. It was also possible to
select to create a new user, but the then-displayed form would disallow
creating a new user with that email address.