Add support for granting `Permission`s to other `User`s on a `Conference`
Merge pull request #114 from CruGlobal/feat/permissions

Permissions
Only need to capture profile on registration completion.
Merge pull request #115 from CruGlobal/capture-profile

Only need to capture profile on registration completion.
If not specified by caller, set registration completed to false.
By not setting it to false on all creates, this allows the caller to create a registration completed.
Secondly, and maybe more importantly, we don't know whether this update is actually a create until after we have converted the Registration into an entity, and if we wait until then to set the completed value, we'd have to set it twice, in both the Registration and Entity objects, which seemed not the best.
Set the boolean in the caller provided registration object which will later be used to evaluate that boolean value.
Correct java doc @param (which Intellij considers an error).
Change Registration completed field type from Boolean to primitive boolean.
Makes field management easier. Defaults to false when not set by caller.
Merge pull request #120 from CruGlobal/manage-registration-completed-field

Manage registration completed field
Granting permissions will now send an email to the recipient to accept permissions
 - no more searching for existing users by name or email
 - newly granted permissions are stored without a userId
 - permission recipient clicks link to come into system to accept permissions
 - the user id determined by auth provider will update the stored permission with a user id
 - some tests added
Merge pull request #116 from CruGlobal/feat/permissions-email

Feat/permissions email
Adding `PaymentType`s to the Web API and the database
 - In the database the values are stored as a postgres enum
 - The possible values are: CREDIT_CARD, CHECK, CASH, SCHOLOARSHIP
Merge pull request #118 from CruGlobal/feat/payment-types

Adding payment types from the database layer to the web api layer.
Ensure user is not already registered on create registration.
Ensure user is not already registered on create registration.
Prepare registration for creation.
Need to set on registration as update registration depends on finding registration id set.
Correct spelling.
Remove explicit check for user already registered
That service is now provided by the authorization service.
Prepopulate registration from profile.
Pass more appropriate conference id to 'fetchBlocksForConference'
Add test to check for registration prepopulation from profile.