Splits a string into command line arguments mirroring CommandLineToArgV with VC++ 2008 parsing rules.