run_cmd now can use str instead of list for args
Added some tests.