after much blood sweat and years, got PatientAssociatedContacts working with retained pks
wrote custom logic for the rules stuff to make the code a bit simpler.