Do we really need to check for `STDIN.to_i, STDOUT.to_i, STDERR.to_i`? Is there a case where these aren't 0,1,2?