class Computer::ShellError
raised / thrown by Shell.run
if exit status non-zero
todo/check: (re)use an already existing error - why? why not?
raised / thrown by Shell.run
if exit status non-zero
todo/check: (re)use an already existing error - why? why not?