1. A method in a client computing device for enabling authors to work on a hierarchical document, comprising: retrieving a local copy of the hierarchical document from a server computing device; receiving an indication of a requested mutation from a user; sending a message to the server computing device containing the requested mutation; when the requested mutation is successfully applied by the server computing device to the hierarchical document, receiving a message from the server computing device acknowledging a successful mutation to the hierarchical document; and when the requested mutation is not successfully applied by the server computing device to the hierarchical document, receiving a message from the server computing device containing an indication to revert the local copy of the hierarchical document to a current form of the hierarchical document on the server computing device.