anchor.diff:  
   init([Binding, App, Options]) ->
       HandlerSup = start_handler_sup(),
  +    Mod = maybe_cb_init(Options),
       LSock = listen(Binding, Options),
  -    {ok, init_state(HandlerSup, LSock, App), {first_msg, accept}}.
  +    State = #state{
  +               handler_sup=HandlerSup,
  +               lsock=LSock,
  +               app=App,
  +               mod=Mod,
  +               accept_timeout=accept_timeout_opt(Mod, Options)},
  +    {ok, State, {first_msg, accept}}.
  +
  +maybe_cb_init(Options) ->
  +    case proplists:get_value(callback, Options) of
  +        undefined -> undefined;
  +        {Mod, InitArg} ->
  +            Mod:init(InitArg),
  +            Mod
  +    end.
   
   start_handler_sup() ->
       {ok, Sup} = psycho_handler_sup:start_link(),
  
positive.code: 
  listen(Binding, Options) ->
      Port = binding_port(Binding),
      ListenOpts = listen_options(Binding, Options),
      handle_listen(gen_tcp:listen(Port, ListenOpts)).
  
  binding_port(Port) when is_integer(Port) -> Port;
  binding_port({_Addr, Port}) when is_integer(Port) -> Port; 
  binding_port(Other) -> error({invalid_binding, Other}).
  
  listen_options(_Binding, Opts) ->
      %% TODO - use Binding to specify bound IP addr
      [binary,
       {active, false},
       {reuseaddr, true},
       {backlog, proplists:get_value(backlog, Opts, ?DEFAULT_BACKLOG)},
       {recbuf, proplists:get_value(recbuf, Opts, ?DEFAULT_RECBUF)}].
  
  handle_listen({ok, LSock}) -> LSock;
  handle_listen({error, Err}) -> error({listen, Err}).
  
  init_state(HandlerSup, LSock, App) ->
      #state{handler_sup=HandlerSup, lsock=LSock, app=App}.
  
  %%%===================================================================
  %%% Message dispatch
  
negative.code: 
  -export([init/1, handle_msg/3]).
  
  -record(state, {handler_sup, lsock, app, mod, accept_timeout}).
  
  -define(DEFAULT_BACKLOG,  128).
  -define(DEFAULT_RECBUF,   8192).
  -define(DEFAULT_ACCEPT_TIMEOUT_FOR_CB, 500).
  
  %%%===================================================================
  %%% Start / init
  