On Windows platforms, calls to Kernel#system issues commands to Windows Command Interpreter (cmd.exe). Windows Command Interpreter does not support setting of environment variables at the beginning of a command. This pull request moves the setting of environment variables inside the command string passed to sh where environment variables are processed as expected.
Replace use of '/dev/null' with Guard::DEV_NULL, a constant that is evaluated at load time Guard is loaded (see guard/guard#365). The constant is set 'NUL' on Windows to '/dev/null' on other platforms.