This is all looking really good to me. But I have one question here (since I can't quite fgure out the flow in my head). It's a performance question. Is the ReverseRoutingContext cached for each route or is it generated each time a call to Assets.versioned() is made?