When in edit-mode, don't perform full COW updates.
This resolves a bottleneck where every update while transforming
copied the entire mesh data-block, which isn't needed as the edit-mesh
is the source of the data being edited.
----
**Notes:**
- These changes where needed for this patch to function properly.
- {rBaa6f0f3d1fddb276391f384d0a69e509c927341f}
- {rB2b640622ff28977840ede56ff21cb6993b662927}
- Some tests in {T88021} found this operation took about 40% of the overall time taken to update the mesh while transforming.
**Alternatives:**
Some alternative solutions I considered, although I'm not so experienced with the depsgraph, so it's possible I missed something.
- Copy-on-write could define components for updating e.g. `shared-pointers`, `runtime-data`, `id-data`. This would allow copy-on-write updates to be left enabled, while avoiding expensive operations.
- Recalculating geometry could never do copy-on-write, instead we could require the caller to pass `ID_RECALC_COPY_ON_WRITE`. This might not be so bad as there aren't so many mesh editing operations in object mode, although it might still be error prone.
- There could be a separate kind of `ID_RECALC_GEOMETRY` flag for edit-mode, instead of making the current flag check the id-state. From some tests though it seems like adding similar flags ends up requiring duplicate code-paths for something that's virtually the same, so it didn't seem worthwhile.