use context rather than passing around a DB object