Custom Fields don't get added during creation phase causing creation notifications to not fire for User/Group field types. (JEMH-306)

This is related to JEMH-230:

Because you moved the handling of custom attributes after creation, any custom field (i.e. user/group) will not get any create notifications if it is specified to do so in its notification scheme.
e.g. Create custom user field. Set user field to get create notification. Populate field during create.

I replicated the null pointer exception bug when reinstating the call in IssueCreationHelper and found out the cause. With the older code, it was creating two database entries in the custom field values table. The 1st entry added did not have an association to any ticket and thus throws an NPE. A flaw in the Jira code as well since they don't do any null checks after marshalling.
The culprit:
multiUserCF.updateValue(fieldLayoutItem, fIssue, modifiedValue, new DefaultIssueChangeHolder());
Only call updateValue if issueKey exists.

To fix this you'll need to update the updateMultiEntity and setupCustomFields method with the following before updateValue:

  1. Put new ModifiedValue into the fIssue.modifiedFields map

  1. Split the newValString into a list strValueList. (Applies only to Multi fields)

  1. Set the fIssue.customFieldValue with newValList

  1. If fIssue is not null, updateValue.

I believe this also applies to updateCascadingSelectCF.

With the changes above, you can now place the setup(Complex)CustomField calls into the IssueCreationHelper.

Apologies for the pseudo-code as I can not provide actual code because of company policy.