Create IDs for shaders and use them for cache look-ups.