Causal Ordering added. Did not brute force test this but code complete.