Problem with performance and getRouteByName

Because almost all bases on Router::getRouteByName (for example Url plugin in
views) it is a bottleneck in a
application with bigger set of routes. Each time when Router::getRouteByName
won't find a route in a lookput table, it will try to generate this
table.

I know it's not the cleaniest solution and it can be improved. The best way would be requiring to define a route name while adding it to router. Also weren't if merge was correct (based on code from master) because branch 1.3.0 does not compile.