Behat/MinkExtension — pull request #117 by stof (2014-01-04 14:20:35+00:00)
Title: Refactored the extension for Behat 3.0-RC

This is the full upgrade of the extension to Behat 3.0-RC1 (#116 was only allowing to register the extension without exploding, it was not fixing the features)

BC breaks for the users:
- the ``MinkAwareInterface`` has been renamed to ``MinkAwareContext``
- the MinkContext is not used automatically anymore when you don't have a behat config. I don't plan to reintroduce it. It would require duplicating the GherkinSuiteGenerator only to cover an edge case (when using Behat properly, the MinkContext steps should not be enough to write your scenarios anyway)
- the support of the ``MINK_EXTENSION_PARAMS`` has been removed, as the implementation was a hack (it was changing the default value in the config tree instead of passing the config to the merge process, which also means it was not validated properly). For this one, I'm planning to introduce a feature in Testwork to allow an extension to receive its config from a dedicated environment variable, to have it implemented cleanly. However, it will still be a BC break as the env variable will then expect JSON (like the ``BEHAT_PARAMS`` in 3.0)

BC breaks for extension authors:
- all MinkExtension services and parameters have been renamed (mostly removing the leading ``behat.``, but the SelectorsHandler id has more changes)
- all dependencies of drivers are not available as named services anymore (they are anonymous services in the session service)
- all parameters created previously based on the configuration of sessions are gone (the values are set directly in service definitions)
- tag names for selectors and sessions have been renamed (removing the ``behat.`` prefix). the new tags are available as constants in the extensions.

TODOs:
- [ ] update the the doc
- [ ] write a real testsuite