Optimizations for JRoute and JRouter

Optimizing JRoute
- Allow associative arrays instead of string URIs
- Allow routers to set the URI to HTTPS from the inside
- some performance optimizations

Optimizing JRouter
- deprecate JRouter::creatUri(), moving the code into the JRouter::build() method
- optimizing code in JRouter::build()
- introducing a runtime cache to only process a URI once per runtime