cleaned up runcmd function