Achieving Convergence, Causality Preservation, and Intention Preservation in Real-Time Cooperative Editing Systems