Issue #277 - Affects running login, pack, and publish on Windows.
`Command::new("npm")` launched `npm` with quotes, `"npm"`, causing a
run-time error on Windows. Now, `Command::new` is wrapped by
`child::new_command(program: &str)`. This prepends `cmd /c` to the
program name if `cfg!(windows)`.
See rustc: #42436, #42791, #44542