anchor.diff:  						% We pass around arguments required by mongo:do/5
       case {proplists:get_value(db_username, Options),proplists:get_value(db_password, Options)} of
   	{undefined,undefined}  ->
  -	    {ok, {readwrite, 
  +	    {ok, {readwrite,
   		  {WriteMode, ReadMode, ReadConnection, list_to_atom(Database)},
   		  {WriteMode, ReadMode, WriteConnection, list_to_atom(Database)}}
   	    };
   	{User, Pass} ->
  -	    {ok, {readwrite, 
  +	    {ok, {readwrite,
   		  {WriteMode, ReadMode, ReadConnection,  list_to_atom(Database),list_to_binary(User),list_to_binary(Pass)},
   		  {WriteMode, ReadMode, WriteConnection, list_to_atom(Database),list_to_binary(User),list_to_binary(Pass)}}
   	    }
  
positive.code:         [_, MongoId] = string:tokens(BossId, "-"),
          {hex2dec(MongoId)}
      catch
          Error:Reason -> 
              error_logger:warning_msg("Error parsing Boss record id: ~p:~p~n", 
                  [Error, Reason]),
              []
      end.
  
negative.code: execute({WriteMode, ReadMode, Connection, Database}, Fun) ->
      mongo:do(WriteMode, ReadMode, Connection, Database, Fun) ;
  execute({WriteMode, ReadMode, Connection, Database, User, Password}, Fun) ->
      mongo:do(WriteMode, ReadMode, Connection, Database,
  	     fun() ->
  		     case mongo:auth(User,Password) of
  			 true ->
  