anchor.diff:                    | {group_node_remove, Pid::comm:mypid()}
                     | {group_split, Proposer::comm:mypid(), SplitKey::?RT:key(),
                        LeftGroup::list(comm:mypid()), RightGroup::list(comm:mypid())}
  -                  | {read, Key::?RT:key(), Value::any(), Client::comm:mypid()}
  -                  | {write, Key::?RT:key(), Value::any(), Client::comm:mypid()}).
  +                  | {read, Key::?RT:key(), Value::any(), Version::pos_integer(),
  +                     Client::comm:mypid(), Proposer::comm:mypid()}
  +                  | {write, Key::?RT:key(), Value::any(), Version::pos_integer(),
  +                     Client::comm:mypid(), Proposer::comm:mypid()}).
   
   -type(mode_type() :: joining | joined).
   
  
positive.code: 
  -type(decision_hint() :: my_proposal_won | had_no_proposal).
  
  -type(group_id() :: non_neg_integer()).
  
  -type(group_node() :: {GroupId::group_id(),
                         Version::non_neg_integer(),
                         Members::list(comm:mypid())}).
  
negative.code: 
  -include("scalaris.hrl").
  
  -type(group_id() :: non_neg_integer()).
  
  -type(paxos_id() :: {group_id(), pos_integer()}).
  
  -type(proposal() :: {group_node_join, Pid::comm:mypid(), Acceptor::comm:mypid(),
  