Make user id and login name generation pluggable.

Query 'ILoginNameGenerator' utility to get a login name during registration.
This makes it easier to override the default login name logic.

Query 'IUserIdGenerator' utility to get a user id during registration.
This makes it easier to override the default user id logic.

Support 'use_uuid_as_userid' site property.

Part of PLIP 13419.