There's not a lot of point in passing these around or storing them (texture cache/state tracker mainly) as there will only ever be a single instance of the class. Also adds downcast helpers such as Vulkan::Renderer::GetInstance().
Same way as GL with the dual-pass fallback. Not highly accurate, but does fix the Kirby shadow bug.