anchor.diff:  -record(state, {version       :: integer(),
                   ensemble_data :: ensembles(),
                   remote_peers  :: orddict(peer_id(), pid()),
  -                cluster_state :: cluster_state()
  +                cluster_state :: cluster_state(),
  +                subscribers :: [fun()]
                  }).
   
   -type state() :: #state{}.
  
positive.code:                  %% io:format("Should stop: ~p~n", [{Ensemble, Id}]),
                   ok = riak_ensemble_peer_sup:stop_peer(Ensemble, Id)
           end || Change <- PeerChanges],
      State#state{ensemble_data=NewEnsData}.
  
  -spec request_remote_peers(state()) -> ok.
  
negative.code:             {noreply, State}
      end;
  
  handle_call({subscribe, Callback}, _, State=#state{subscribers=Subscribers}) ->
      %% TODO: Change subscriber API to prevent multiple subscriptions with the same callback.
      Subscribers2 = [Callback|Subscribers],
      application:set_env(riak_ensemble, subscribers, Subscribers2),
      State2 = State#state{subscribers=Subscribers2},
      {reply, ok, State2};
  
  handle_call(_Request, _From, State) ->
      {reply, ok, State}.
  
  