PRIPAD-5320 Support non-numeric version numbers

Support non-numeric version numbers, i.e. `2.7.2b2`.
If you put in a version number that contains disallowed characters (any character that isn't in the set `\w\d.` - word character (including underscore), decimal, dot) it will flatten the version to something we can represent in the URL. So if you had a version as `2.7.2b2 (74)`, the version will become `2.7.2b2.74`.