adapting engine.circuit and gui.circuititem to work together