Architecture operating system changes

This changes the pair of variables (architecture, operating-system) over to a single value, platform-name.  There are a couple of places where we pull this apart and look at specific properties and we'll update them over time to not do this.

This simplifies support for things where the platform name would be something like "emscripten" or "jvm" where there isn't really an architecture and operating system pair.