anchor.diff:  -type lasse_handler_option()  :: {'module', module()} | {'init_args', any()}.
   -type lasse_handler_options() :: [module()] | [lasse_handler_option(), ...].
   
  --spec init(any(), any(), lasse_handler_options()) -> {loop, any(), record(state)}.
  +-spec init(any(), cowboy_req:req(), lasse_handler_options()) ->
  +    {loop, any(), state()}.
   init(_Transport, Req, Opts) ->
       Module = case get_value(module, Opts, Opts) of
                    Name when is_atom(Name) -> Name;
  
positive.code:     InitResult = Module:init(InitArgs, LastEventId, Req),
      handle_init(InitResult, Module).
  
  info({message, Msg}, Req, State) ->
      Module = State#state.module,
      ModuleState = State#state.state,
  
negative.code:           module :: module(),
            state :: any()
          }).
  -type state() :: #state{}.
  
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  %% Behavior definition
  