Handling quoted values in shells

Sometimes we need to set values that contains quotes, and we don't want the shell to interpret them. So we need to escape them. 
with the old command, escaping like so will be good for bash but not for tcsh
` - export VARIABLE_WITH_QUOTES="loadPlugin(\"mayaPlugin\")"`

with  new commands
`setenv("VARIABLE_WITH_QUOTES", 'loadPlugin("mayaPlugin")')`
they need to be escaped in both tcsh and bash

Added some test cases to show this. Also fixed the other test so they really run in the shell. The **@shell_dependent** function decorator is only changing the value in the config, we need to create the shell with that value and also pass it to  `excecute_shell`