 
 	- parameter executable: path to an executable file.
 	- parameter args: arguments to the executable.
-	- throws: a ShellError if the return code is anything but 0.
+	- throws: `ShellError.ReturnedErrorCode (command: String, errorcode: Int32)` if the exit code is anything but 0.
+
+		`ShellError.InAccessibleExecutable (path: String)` if 'executable’ turned out to be not so executable after all.
 	*/
 	public func runAndPrint (executable: String, _ args: Any ...) throws {
 		let stringargs = args.flatten().map { String($0) }

	Wait for this shell task to finish.

	- returns: itself
	- throws: a ShellError.ReturnedErrorCode if the return code is not 0.
	*/
	public func finish() throws -> AsyncShellTask {
		try task.finish()


- parameter executable: path to an executable file.
- parameter args: arguments to the executable.
- throws: `ShellError.ReturnedErrorCode (command: String, errorcode: Int32)` if the exit code is anything but 0.

	`ShellError.InAccessibleExecutable (path: String)` if 'executable’ turned out to be not so executable after all.
*/
public func runAndPrint (executable: String, _ args: Any ...) throws {
	return try main.runAndPrint(executable, args)
