Result's mix_stderr conflates an empty stderr with not having separate streams

In trying to move to click's new support for not mixing stdout and stderr, I encountered that click misinterprets an empty stderr as not having asked to not mix stdout and stderr.

https://github.com/pallets/click/blob/20a2bd8a13/click/testing.py#L105-L106 looks like the offending lines.

Failing test case:

import click
from click.testing import CliRunner
@click.command()
def cli_empty_stderr():
    click.echo("stdout")

runner = CliRunner(mix_stderr=False)

result = runner.invoke(cli_empty_stderr)

assert result.output == 'stdout\n'
assert result.stdout == 'stdout\n'
assert result.stderr == ''