Causal Engines