#1267: XSL should use Router

In phpDocumentor we have a router component that makes sure that generated file paths and rendered paths are equal. This router also compensates for some oddities in windows.

During recent testing it became obvious that the XSL writer does not use the router component. This should be corrected to make use of the routing.

This will however mean that URLs of generated pages may change based on the amount of changes incurred by the router once the templates start using it.

Excluded from this PR are the changes necessary for templates to start using it. As long as templates do not change they continue to function as before.

> I have been a bit naughty, included in this PR are also several fixes for bugs that I encountered during the implementation of this item
Indeed; by moving this to a class I now import an instance of this class into the closure; negating the need for the method to be public.