Made the name an optional parameter for campaign creation.

When creating a campaign, the name may be included externally as a parameter to the API, "campaign_name", and not included in the XML. If it is found in the XML as well as as a parameter, the two values must be identical, in which case the parameter is ignored.

Closes #542