A wrapper for circuit elements, used to construct circuits.
This type provides a generic wrapper around different circuit components (inputs, gates)
and enables composition of circuit elements through arithmetic operations.
The type parameter T defines the specific role of the element in the circuit.