- TODO: Store.Insert should take its arguments as pointers; the risk of continuing to use the un-updated records is too great - TODO: consider adding an upsert, e.g. `func (Store[R]) InsertOrUpdate(db Handle, records ...*R) error`, that chooses based on whether any auto fields is non-zero