More changes, implemented NEDI using new system

Also added automated caching of compiled shaders.