While documenting our release process, we can see some things that don't
need to be locked together are.
This splits release into prepare/publish parts
Now anyone can prepare a release but will not be able to publish that
release without the correct access to Github and Rubygems.
Adds a preflight task and adds a check for existing tags to that.