Much better organize shader resource fields
Add ReadOnly stub attribute for DisplayInfo
Fix loading game resource when we don't have a compiled version
Pass each shader program as a field rather than a string when serializing to kv3, makes it better to organize it, also clean it up every time we compile