This is an attempt to solve the Task T51604
You can not allocate arrays in bmesh's CustomData. So I decided to remove the use of CustomData to allocate the loop_normals in both EditMesh and Mesh.
Since split normals is a slow operation, a special attention must be paid when it is requested in the tangent calculation (BKE_mesh_calc_loop_tangent_ex). Before it was stored in CustomData. Now it is recalculated.