Reversed workflow for creating tickets and publications

To create a publication, we will first create a new content item using the `ContentAPI`. After a request has been sent to `/api/content/create`, the returned `contentId` needs to be used to create a new publication and ticket.

### Flow ###
1. Send request to `/api/content/create`
2. Pass the returned `contentId`, together with the publication metadata in the request to `/api/ticket/create`
3. When the `externalId` for the ticket is locked. we create a new publication.
4. When the publication has been created, we return the created ticket, decorated with the publication
It's probably for the best if we use `assert.strictEqual` wherever we can. I didn't realize `assert.equal` is essentially `a == b` and `assert.strictEqual` is `a === b`. We probably almost never want the former.