Fixes material list not showing all locked materials due to improper original shader lookup.
Extracts/refactors original shader lookup to it's own methods so they could be easily reused if needed (current instances within ShaderOptimizer is 2).
The order in which the original shader is looked for has also been changed to look for a match by GUID first as it is more likely to be the exact same shader even under a different name.
Feel free to squash the commits when merging, VS spat a merge conflict when I was committing the condition fix.
Feel free to squash the commits when merging, VS spat a merge conflict when I was committing the condition fix.