RSL hash substitution

Hi!

I would like to share with you my improvement to rslUrls. With this code you will be allowed to use:
```xml
<rslUrls>
    <url>{contextRoot}/rsls/{artifactId}-{hash}.{extension}</url>
</rslUrls>
```
where hash is a md5 hash of library SWC file. It's very useful for caching RSLs, no need to worry about versions and other things - if RSL is changed, it will have different name ( for example: advancedgrids-329f05f6505656a1e8a281c838e97564.swz ).


Tested in 5.X branch (unfortunately our projects are still on 5.0-beta and 4.6.b.23130), but should works fine in 7.X because changes are backward compatible. 



Thanks!