Redesign the API for updates

* The get-modify-update round-trip was inconvenient and difficult
  to get right (stashing was required to avoid overwriting your own data
  with wrong values in some cases)
* The new Update message takes a function that is applied on the the
  current data in the Replicator
* read-repair happens before GetSuccess
* enable pruning of removed node again