Refactor "omnibus release" into a non-S3-specific thing

The current release command is heavily tied to S3. This commit extracts
the package-specific bits into a new `Package` class, which removes
much of the logic from the S3 releaser. These methods are now
available in future releasers.

This commit renames the CLI command from "omnibus release" to
"omnibus publish". As a team, we agreed that "release" was an incorrect
verb for the action taking place. NOTE: this commit does not include a
deprecation yet. That will be done in a future commit.
Fix @todo comment in Software
Freeze the DEFAULT_CONFIG constant
Remove duplicate test in publisher_spec
Remove unused Artifact methods
Make a digestable mixin
Move checksums into the Package class
Add copyright header to Logger
Merge artifact and package into a single class
Add `omnibus publish` example to the generated README
Add long_desc to the publish command
This is my last fuck to give about Rubocop
Fix formatting on error messages
Add deprecations for `omnibus release`
Update CHANGELOG for new publisher
This one is for you Rubocop :beer: