public static void propagateTo(IPropagationPart part, @Nullable IPropagationPart from, int mode) {
        if (currentRun != null) {
            currentRun.add(part, from, mode);
            return;
        }
        currentRun = reusableRuns.isEmpty() ? new PropagationRun() : reusableRuns.removeFirst();
        currentRun.add(part, from, mode);
        currentRun.executeRun(finishingRun);
    }
Used when the propagator did not change signal, but a new connection may
have been established and signal needs recalculating
core/src/main/java/mrtjp/projectred/core/RedstonePropagator.java