EZP-23441: Got started with ComplexSettings
EZP-23441: Added ComplexSettingParser
EZP-23441: Renamed ComplexSettings pass
EZP-23441: added ComplexSetting factory
EZP-23441: Made ComplexSettingParser inherit from DynamicSettingParser
EZP-23441: Improved DynamicSettingParser::isDynamicSetting

Added a regexp if the first, lightweight test passes.
EZP-23441: Moved ComplexSettingPass to CoreBundle
EZP-23441: Removed ComplexSetting value
EZP-23441: OOP ID:10T
EZP-23441: Moved complex settings to CoreBundle
EZP-23441: Added ComplexSetting compiler pass

Identifies arguments/methods with a complex setting, a string with
more than one dynamic setting, or one dynamic setting and anything
else.

Converts them into factories that dynamically replace the settings
in the string with their value.
EZP-23441: Began url decorator config
EZP-23441: Added parsing of complex parameters

Complex parameter in the io.url_prefix ezpublish setting will be
parsed and resolved to the real settings in each context it is set for.
EZP-23441: Handled complex settings dependencies

Any complex setting must be added to scopes where one of its dependencies
(dynamic variables it uses) is declared in this scope, so that it can
get its own value written.
EZP-23441: renamed url decorator services
EZP-23441: Added legacy url redecorator

Will convert from public url, that use the default url decorator,
to what legacy expects to store (note: it leaves the /, while legacy
doesn't want it).
EZP-23441: Changed ComplexSetting factory to static
EZP-23441: Implemented UrlRedecorator in legacy image converter
EZP-23441: cs
EZP-23441: updated ComplexSettingPass arg handling