Multiple Trees by scope support added

Previously it was very difficult to add new trees because
SiteTreeUrlGenerator, SiteTreePathFinder and many more classes has to be
constructed manually. Now the most of this classes are aware of n trees
by a flexible scope -> tree handling. Scope can be determined from
everything inside a request. The first scope repository reads out every
root node and takes the pathprefix as the scope determinator