separated AbstractLighting and Fading classes from HypnocubeImpl class