Updating multi_entity fields

What's the proper way to update a multi_entity reference in the python api?  Take for example the cut <-> versions relationship: if I'm creating a new cut do i need to go to each version I want to add to it, get the current value of the cuts field, add my new cut and update it (which is a race condition)?  Or should I be creating connection entities directly?