EZP-23441: IO url decorators configuration

> Based on #1017 
> [EZP-23441](http://jira.ez.no/browse/EZP-23441)
> [Specifications](https://gist.github.com/bdunogier/abb938de8be8c77ea69a)

Makes it possible to set the prefix for IO uris at siteaccess level. Other siteacces level variables can be used in the configuration.

Absolute prefixes to other hosts are also possible, and will work with legacy data (as long as the file is available from this uri).

### Changes

#### Settings
Most of the changes are about the ConfigResolver:
- allow dynamic settings in semantic config (added for a specific setting)
- allow complex dynamic settings (`$var_dir$/$storage_dir$`).

Complex settings has been added as part of the CoreBundle. Dynamic settings in semantic config is only part of the IOBundle for now, as it is a bit rough around the edges (but should be possible to move it up to the CoreBundle with a bit of work).

#### url_decorator services
There are now two main url decorators: the default one, and a legacy one. The legacy one is used in the Legacy Converter, via an UrlRedecorator,  to convert the system's uris to the format it requires.

## Configuration example
```
ezpublish:
  system:
    default:
      io:
        url_prefix: "http://static.site.com/$var_dir$/$storage_dir$"
```

## TODO
- [ ] Add specs to PR
- [ ] url or uri ?
- [ ] Re-issue PR to master
Nope, as explained it is default, as we are looking for scopes that have a value for any parameter used in the complex one. If there is a custom value for the complex parameter, we exit the method in the test right above.