producer extensions like producer-rails must not reimplement all the
testing infrastructure, this extraction allows to setup everything with
just one require call in cucumber env:
require 'producer/core/testing/cucumber'
* Implement ArubaProgramWrapper in cucumber env;
* Tag a few features to not use the wrapper as aruba doesn't support yet
interactive testing with in process mode, and reported program name
will not be the correct one;
* Assign required standard streams to CLI and Env classes.
It was initially added to allow reuse of aruba cucumber steps, using
`must' instead of `should'. This is creating more harm than good, hence
we remove it and implements all missing steps, using aruba API.
Cucumber chomp the last \n from multiline strings (docstrings), this
monkey patch modify Cucumber::Ast::DocString constructor to add the
missing ending new line character and
Cucumber::Formatter::Pretty#doc_string to remove it from the output.