Stop coercing MACOS_VERSION to a float
Disallow initializing Versions with non-strings

Closes #23553.