The use of "noshell" should not be impose but just a default option.
In some cases, the command to use need pipes and some actions with files. I suppose we should admit that the user know what it does and with a warning authorized to use any command he wish.