Add an extension-point for DI into the Matcher/Generator Dumpers
merged branch gnutix/2.3 (PR #8339)

This PR was submitted for the 2.3 branch but it was merged into the master branch instead (closes #8339).

Discussion
----------

[Routing] Add an extension-point for DI into the Matcher/Generator Dumpers

| Q             | A
| ------------- | ---
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

The Routing's MatcherDumper and GeneratorDumper classes are instantiated very deeply into the `Router::getGenerator()` and `Router::getMatcher()` methods.

This pull requests aims to :
 1. separate the instances creation
 2. ease overriding (lesser risks of changes at framework updates)
 3. ease dependencies injection for these classes (as we can't inject dependencies in another way, be it service definition, compiler pass or whatever I'm aware of).

An example of usage would be the following : https://gist.github.com/gnutix/5844630
It's a real case I'm having in my company's current project.

Commits
-------

5a03a7f [Routing] Add an extension-point for DI into the Matcher/Generator Dumpers