Performance: lazy cache instantiation

This PR makes the cache hits "lazy" - the cache is not hit unless the resolver is hit.

This reduces the performance hit to 0 on systems that may not use the `PhpRenderer`