use extended set syntax to fix Win64 bugs

On 64-bit Windows, JES gets installed to "Program Files (x86)".
The batch interpreter can mess up when you use a variable containing
parentheses in a parenthesized block.

I was testing on a 32-bit machine, so it didn't have the parens,
and I didn't notice this before. Now that I have a 64-bit machine to
test on, I have fixed this.
fix OS version detection on Windows

On Windows, the consumer-known version is included in the os.name
property, with Microsoft's internal version number in os.version.
The internal version number isn't very useful, and is also kind of
weird (for example, Windows 7's os.version is 6.1). So, it now checks
for "Windows " in os.name, and doesn't print os.version in that
case.