func SplitCommandAndArgs(command string) (cmd string, args []string, err error) {
	var parts []string
	if runtimeGoos == "windows" {
		parts = parseWindowsCommand(command)  
	} else {
		parts, err = parseUnixCommand(command)  
		if err != nil {
			err = errors.New("error parsing command: " + err.Error())
			return
		}
	}
	if len(parts) == 0 {
		err = errors.New("no command contained in '" + command + "'")
		return
	}
	cmd = parts[0]
	if len(parts) > 1 {
		args = parts[1:]
	}
	return
}
SplitCommandAndArgs takes a command string and parses it shell-style into the
command and its separate arguments.
package casket
import (
	"errors"
	"runtime"
	"unicode"
	"github.com/flynn/go-shlex"
)
var runtimeGoos = runtime.GOOS