Allow execution of tasks in Linux by doing shell detection

The task runner was hard coding "cmd" as the shell to use. The change will honor the SHELL environment variable if present (generally in Linux), defaulting to "cmd" if it is not set.

Ultimately this should probably be configurable in the app, but auto-detection aught to work in the short term.