Creates and updates a gift registry object.
Behavior:
- execute ValidateGiftRegistryValuesCmd, to validate the inputs
- execute GenerateGiftRegistryExternalIdCmd, to generate an ExternalId for the registry
- execute PersistGiftRegistryCmd, to store the object to the database
- execute SendGiftRegistryMessageCmd, to send an MQ message to another system
- execute SendGiftRegistryConfirmationCmd, to send out a confirmation email
- execute CheckGiftRegistryCredentialsCmd, to authenticate the user on this registry
On error, an ECException is thrown from descendant classes.