Describe scenario when pattern token is followed by a colon

Closes #620
Describe scenario about parameter with decimal number following string

Covers #615
Fix broken scenarios by switching to nehative regex looks

Fixes #615
Describe scenario where pattern parameter is empty

Covers #614
Fix scenario where pattern parameter is empty

Fixes #614
Describe scenarios where steps use slashes

Slashes are alternation syntax in Turnip. Thus, both snippet generation
and pattern matching are broken in steps that have them.

Covers #598
Fix scenarios where steps have slashes

Fixes #598
Merge pull request #622 from Behat/bugfix/turnip-patterns

[bugfix] Turnip patterns edge cases
Describe scenario with optional multiline arguments

Covers #621
Add support for typehinted arguments in definitions

Fixes #621
Simplify MixedArgumentOrganiser::getParameterNumberWithTypehintingValue()
Remove nedless condition
Make value typehint check more obvious
Fix typehint
Merge pull request #624 from Behat/bugfix/optional-parameters

Introduce support for typehints in parameter organisers
Bump the changelog
Merge branch 'master' of github.com:Behat/Behat
Improve generated context class

- Force it to implement both Context and SnippetAcceptingContext
  interfaces
- Change the class description with something closer to real life
Bump changelog