anchor.diff:  code_change(_OldVsn, State, _Extra) -> {ok, State}.
   handle_cast(stop, State)            -> {stop, shutdown, State}.
   handle_info(_Info, State)           -> {noreply, State}.
  +
  +handle_call(reinit, _From, State) ->
  +    case init(State#config.init) of
  +        {ok, State2}  -> {reply, ok, State2};
  +        {stop, Error} -> {reply, {error, Error}, State}
  +    end;
   
   handle_call(get, _From, State) -> {reply, State, State};
   
  
positive.code: 
  %% gen_server callbacks
  
  init({full, ConfigPath, DirPath, PolicyMod}) ->
      case load_config(ConfigPath, DirPath, PolicyMod) of
          {ok, Config} ->
              % TODO: Should save the merged dynamic file config.
              % TODO: Should let node_disco do picking and merging?
              Mergable = PolicyMod:mergable(),
              {ok, pick_node_and_merge(Mergable, Config, nodes([visible]))};
          Error ->
              {stop, Error}
      end;
  
negative.code: % nodes getting added/removed, and gossiping about config
  % information.
  %
  -record(config, {init,         % Initialization parameters.
                   static = [],  % List of TupleList's; TupleList is {K, V}.
                   dynamic = [], % List of TupleList's; TupleList is {K, V}.
                   policy_mod
                  }).
  