Using the attribute name semantics proposed in T97452, this patch moves
the hide status of mesh elements from the ME_FLAG of vertices, edges,
and faces to generic boolean attribute layers. Storing this data as
generic attributes can significantly simplify and improve code,
as described in T95965.
The attributes are called .hide_vert, .hide_edge, and .hide_face.
The . prefix means they are "UI attributes", so they still contain
original data edited by users, but they aren't meant to be accessed
procedurally by the user in arbitrary situations. They will also be
hidden in the spreadsheet and the attribute list by default (I left
that change out for now to help the review process).
The attributes are still written to and read from the mesh in the old way,
so neither forward nor backward compatibility are affected.
Branch: refactor-mesh-hide-generic