huge refactor

added hidden values
supports reference to parent and child objects (see CircuitUnits)