anchor.diff:  %%--------------------------------------------------------------------
   %% Function: connect(Pid, IP, Port)
   %% Description: Connect to the IP and Portnumber for communication with
  -%%   the peer.
  +%%   the peer. Note we don't handle the connect in the init phase. This is
  +%%   due to the fact that a connect may take a considerable amount of time.
  +%%   With this scheme, we spawn off processes, and then make them all attempt
  +%%   connects in parallel, which is much easier.
   %%--------------------------------------------------------------------
   connect(Pid, IP, Port) ->
       gen_server:cast(Pid, {connect, IP, Port}).
  
positive.code: %%--------------------------------------------------------------------
  complete_handshake(Pid, ReservedBytes, Socket, PeerId) ->
      gen_server:cast(Pid, {complete_handshake, ReservedBytes, Socket, PeerId}).
  
  %%--------------------------------------------------------------------
  %% Function: uploaded_data(Pid, Amount)
  %% Description: Record that we uploaded Amount bytes of data to the peer.
  %%--------------------------------------------------------------------
  uploaded_data(Pid, Amount) ->
      gen_server:cast(Pid, {uploaded_data, Amount}).
  
  %%--------------------------------------------------------------------
  %% Function: stop(Pid)
  
negative.code: 
  %% API
  -export([start_link/5, connect/3, choke/1, unchoke/1, interested/1,
  	 send_have_piece/2, complete_handshake/4,
  	stop/1]).
  
  %% gen_server callbacks
  