Update the script executor

Enhance the script executor to allow run scripts on both Windows and Mono platform.

1. Run the script in postbuild as bash script in Mono.
2. Tolerant the missing command in Mono. It happens when the command is
Windows platform only.
3. Replace alternative directory separator in first argument with platform
supported directory separator.

This change is part of the solution to enable build KRuntime on Mono. This change but itself won't enable the build but open up the solution to run post/pre build script on Mono. The change won't break current postbuild script blocks on Windows Platform.

This PR is split from PR #851

@davidfowl 
Why to ToArray()?