fixed up shader manager, added conversion constructors for Effects::Shader