Adding the ability to add search results to an existing set

Includes tests.

I also modified the set class's add() method so that it'll catch and ignore DBI complaints about non-unique foreign keys. Thus, trying to add an object to a set that already contains that object is now a silent no-op instead of a fatal error.