I'd rather this just be a `stream_name` attribute that is initialized by a value passed from `output_to_stdout` and `output_to_stderr`:

``` ruby
def output_to_stdout(expected=nil)
  BuiltIn::OutputToStream.new($stdout, :stdout, expected)
end

def output_to_stderr(expected=nil)
  BuiltIn::OutputToStream.new($stderr, :stderr, expected)
end
```

Then there's no need for this implicit inference logic.