Implement Gerrit's draft-published hook

The draft-published hook is invoked when a draft change is
published.

Since draft patchsets are visible only by their owners, the
patchset-created hook is unusable because it uses a fixed user to
authenticate. So, in this commit we make Git::Hooks exit prematurely
when invoked as the patchset-created hook for a draft change.

When the draft is published is a good time to perform all the checks
that should have been performed by the patchset-created. So, we make all
plugins that hook to patchset-create to also hook to draft-published.