new interface: ILogicSim  = Drawable and ILogicGate