Add state for queued publishing

Now that publishing is handled by the sidekiq queue, we should handle state of a PublishTask in order to give feedback to the user and provide a mechanism for tracking errors with queued publishes. Instead of using the PublicationLog for this we will use a stateful model 'PublishTask'. Which can be used for both error tracking purposes and editor feedback.

It seems like there's a lot of added complexity around this task logging that I'd like to hear a little more justification on. I don't necessarily have a better option but I think we should discuss.