shamelessly copying from hammer-cli-foreman
versioning and a little more structure