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)
Remove comma before value in array initialization
fix the constructor's type-autodetection accepts wrong parameters
Fix doc blocks consistency
Fix coding standards PSR-2
Required literals don't create RouteMatch parameters