Bringing Sigma and my fork to alignment

Not too many major changes, other than decoupling shaders from the CubeSphere class so each instance can have its own.  Mostly doing this so I don't have to fix merge conlicts too often...