db interface -> shared_pointers to minimize WTF's