Added alter-data

`alter-data` changes the data on the server *atomically*, similar to what clojure's `alter` function does with `ref`s.