Added asynchronous execution, conditional execution, pipelining, argparsing, and the basics of io redirection