Implemented simple resource cache and updated ShaderFactory to use the resource cache.