Recently a new geometry node for splitting edges was added in D16399. However, there was already a similar implementation in mesh.cc that was mainly used to fake auto smooth support in Cycles by splitting sharp edges and edges around sharp faces. While there are still possibilities for optimization in the new code, the implementation is safer and simpler, multi-threaded, and aligns better with development plans for caching topology on Mesh and other recent developments with attributes. This patch removes the old code and moves the node implementation to the geometry module so it can be used in editors and RNA. The "free loop normals" argument is deprecated now, since it was only an internal optimization exposed for Cycles. The new mesh `editors` function creates an `IndexMask` of edges to split by reusing some of the code from the corner normal calculation. This change will help to simplify the changes in D16530 and T102858. Differential Revision: https://developer.blender.org/D16732