Add an RNA API function that gives an array of the normals for every control point. The normals depend on the `normal_mode` attribute, which can currently be minumum twist or Z-up, though more options are planned. Normals are currently evaluated on the evaluated points and then sampled back to the control points. Because that can be expensive, a normal mode that only does a first evaluation on control points may be important The function is intended to be used by Cycles, so it doesn't have to implement the calculation of normals itself. They can be interpolated between control points and normalized. For best performance, the function should only be called once, since it does the full calculation for every control point every time it is called. Differential Revision: https://developer.blender.org/D17024