Counterfactual is a protocol for scalable blockchain applications.