Make sequence/parallel/pipeline support promises as arguments