replace dash with underscore in os name/version (#7381)
replace dash with underscore in os name/version (#7381)

Fixes #7356

In some cases OperatingSystem (e.g. LinuxDistro) was getting
instantiated with a version that contains dashes. This breaks because
the concretizer later converts this value to a string and re-parses
it, and the '-' character is used to separate architecture components.
This adds a guard in the initializer to convert '-' to '_'.
LLNL/spack,iulian787/spack,EmreAtes/spack,tmerrick1/spack,matthiasdiener/spack,krafczyk/spack,EmreAtes/spack,mfherbst/spack,LLNL/spack,krafczyk/spack,EmreAtes/spack,matthiasdiener/spack,matthiasdiener/spack,EmreAtes/spack,matthiasdiener/spack,tmerrick1/spack,krafczyk/spack,matthiasdiener/spack,LLNL/spack,mfherbst/spack,mfherbst/spack,iulian787/spack,krafczyk/spack,mfherbst/spack,EmreAtes/spack,tmerrick1/spack,iulian787/spack,tmerrick1/spack,mfherbst/spack,LLNL/spack,tmerrick1/spack,iulian787/spack,krafczyk/spack,iulian787/spack,LLNL/spack