Avoid confusing error message with duplicated formats.

If one specified the same formatter and output (eg. '--format html
--out cucumber/report.html') in both the 'std_opts' part of
'config/cucumber.yml' and the command line, the error message
was the following:

"All but one formatter must use --out, only one can print to each
stream (or STDOUT)".

This was really bewildering in most cases, since the user usually wants
to use the command line to try/verify/rerun things and the message is
not helping him/her understand the cause of the problem (remove the
formatter from the config or the CLI, duh!).

To avoid the confusing error message, the (format, output) pairs are now
uniqued, which I think is consistent with the user's wishes.
Additional test for implicit stdout formats.

This is to stress that duplication removal works even for implicit
stdout streams.
Merge pull request #434 from sldblog/fix_confusing_format_error

Avoid confusing error message with duplicated formats.