Time, clocks, and the ordering of events in a distributed system | Synapse