related to #1, would be nice to avoid link churn on record update where a contained link is unchanged.
currently i believe we look up all forward links and generate deletes for them, and then create all-new backlinks for records when they are updated.
instead we should diff the links after looking them up, only deleting links that were actually removed by the update, and only creating links that newly appear in the record.
cc @maxh.site