 	Wait for this shell task to finish.
 
 	- returns: itself
-	- throws: a ShellError.ReturnedErrorCode if the return code is not 0.
+	- throws: `ShellError.ReturnedErrorCode (command: String, errorcode: Int32)` if the exit code is anything but 0.
 	*/
 	public func finish() throws -> AsyncShellTask {
 		try task.finish()


	- parameter executable: path to an executable file.
	- parameter args: arguments to the executable.
	- throws: a ShellError if the return code is anything but 0.
	*/
	public func runAndPrint (executable: String, _ args: Any ...) throws {
		let stringargs = args.flatten().map { String($0) }

	/**
	Wait until task is finished.

	- throws: `ShellError.ReturnedErrorCode (command: String, errorcode: Int32)` if the exit code is anything but 0.
	*/
	public func finish() throws {
		self.waitUntilExit()
