syscall : add ProcAttr field to pass an unescaped command line on windows
syscall : add ProcAttr field to pass an unescaped command line on windows

On windows, the command line is passed as a single null-terminated string. While the automatic parameter escaping done by syscall.StartProcess works fine with most Windows programs, some applications do their own custom parsing of the command line, in which case the automatic escaping becomes harmful.
This CL adds a new extra CmdLine field to syscall.ProcAttr that will be used as the raw/unescaped command line if not empty.
Fixes issue 1849.

R=golang-dev, alex.brainman, bradfitz, rsc
CC=golang-dev
http://codereview.appspot.com/4548050

Committer: Russ Cox <5ad239cb8a44f659eaaee0aa1ea5b94947abe557@golang.org>

tav/go,tav/go,tav/go,tav/go,tav/go,tav/go,tav/go