anchor.diff:  offset(PerPage, Page) when Page > 0 ->
       (Page-1) * PerPage.
   
  -limit_clause(PerPage, Page) ->
  -    Offset = offset(PerPage, Page),
  -    [" limit ",integer_to_list(Offset),", ",integer_to_list(PerPage)].
  
positive.code: field(Table,Field,IDField,IDValue) ->
      db:fffr(["select ",Field," from ",Table," where ",IDField,"= ?"],[IDValue]).
  
  %% This does the same as above, but uses Table ++ "id" for the idfield
  field(Table,Field,IDValue) when is_atom(Table) ->
      field(atom_to_list(Table),Field,IDValue);
  field(Table,Field,IDValue) ->
      field(Table,Field,Table ++ "id",IDValue).
  
  delete(Table,ID) when is_atom(Table) ->
      delete(atom_to_list(Table),ID);
  delete(Table,ID) when is_list(Table) ->
      KeyField = Table ++ "id",
      delete(Table,KeyField,ID).
  
  delete(Table,KeyField,ID) when is_atom(Table) ->
      delete(atom_to_list(Table),KeyField,ID);
  delete(Table,KeyField,ID) when is_atom(KeyField) ->
  
negative.code:     FilteredDict = lists:foldl(DictFilterFoldFun,SrcDict,AcceptableFields),
      dict:to_list(FilteredDict).
  
  -spec iolist_join(List :: [iolist()], Delimiter :: iolist()) -> iolist().
  %% @doc Joins a list of iolists together by a delimiter
  iolist_join([], _) ->
      [];
  iolist_join([H], _) ->
  