[#4330] Constructor injection

- Use constructor injection for getting ControllerManager into Forward plugin
  (per @bakura10)
- Remove test case that's no longer applicable (we can now forward to any
  controller!)
- Fix test cases that were instantiating the Forward plugin directly to inject
  the ControllerManager
Set hydrators not shared by default
Merge pull request #4319 from bakura10/hydrator-plugin-manager

Add various plugin manager
[#4319] Fix tests

- Intention changed mid-PR, but tests were not updated; demonstrate that Factory
  composes a default filter chain and validator chain by default.
[#4319] Do not share input filter instances by default
Merge branch 'feature/4319' into develop

Close #4319
Add unit tests for translatable segments
Add unit tests for translator aware tree route stack
Update annotations

- Revert changes applied with 3389ae3
- Update names of parameters to reflect keys used in option array
- Use int instead of integer for type
Use is_int() instead of is_integer()
Fix alignment of values, add trailing comma
Remove @return annotation from constructor doc-block

Re-align annotations along the way.
Fix doc-block

- Fix spelling error
- Update annotations
- Import class
- Order imports alphabetically
Docblock doesn't match
Add unit tests for chain route
Add unit tests for chain route generation in tree route stack
Add missing file level doc-block
Minot changes to event manager integration in translator
Add empty line after namespace declaration

Remove extra empty line after use statements.
Alphabetically order use statements (related to #4338)