Transactors: A programming model for maintaining globally consistent distributed in unreliable environmentsJohn FieldCarlos A. Varela2005POPL 2005