RPM version numbers

We now have functions for converting between Buzzy version numbers and
RPM version numbers.  The RPM version comparison algorithm is defined in
[1], and RedHat provides additional guidance in selecting version
numbers at [2].  RPM version strings are most restrictive than Buzzy
version strings: Buzzy lets you have as many pre- and post-release tags
as you want, in any order within the version.  RPM does not really have
a separate concept of pre- and post-release tags, so we have to mimic
those by the version parts that we do have available.

This means that the new functions are not reversible — if you convert a
Buzzy version into an RPM version, and then back, you don't get the same
result.  However, if you convert once in either direction, we can
guarantee that a version comparison will be the same before and after
the conversion.

[1] http://fedoraproject.org/wiki/Archive:Tools/RPM/VersionComparison
[2] https://fedoraproject.org/wiki/Packaging:NamingGuidelines#Package_Versioning