anchor.diff:  	SessionId = wrq:get_cookie_value("rpgbsid", ReqData),
   	?MODULE:get(SessionId).
   
  +%% @doc Creates a new session in the ets table and returns it.  While the
  +%% uuid's for the session are randomly generated, there is still a check
  +%% to ensure they are unique.
  +-spec create() -> {'ok', session()}.
   create() ->
   	Uuid = make_uuid(),
   	Session = {Uuid, undefined, dict:new(), calendar:local_time()},
  
positive.code: 			{ok, Session, ReqData0}
  	end.
  
  get(undefined) ->
  	{error, notfound};
  
  
negative.code: 			{ok, Session}
  	end.
  
  %% @doc Remove a session from the ets.
  -spec destroy (Id :: binary()) -> 'ok'.
  destroy(Id) ->
  	ets:delete(?MODULE, Id).
  
  %% @doc Extracts the id from a `session()'.
  -spec get_id(Session :: session()) -> binary().
  get_id({Id, _, _, _}) -> Id.
  
  %% @doc Extracts the user proplist from a `session()'.
  -spec get_user(Session :: session()) -> user_data().
  get_user({_, User, _, _}) -> User.
  
  %% @doc Sets the user of a session, overwriting an existing one.
  -spec set_user(User :: user_data(), Session :: session()) ->
  	{'ok', session()}.
  set_user(User, {Id, undefined, Values, _}) ->
  	Session = {Id, User, Values, calendar:local_time()},
  	ets:insert(?MODULE, Session),
  