Redmine#4761: Clarify and fix semantics of release-ID generation

see https://cfengine.com/dev/issues/4761

Please note that each commit should be reviewed separately.  The only potentially dangerous commit is ff2e780