The goal is to convert the legacy hair system to the new curves object at run-time for drawing. This should allow us to get rid of all drawing code that was specific to hair particle systems. Then we can focus on improving the rendering of the curves object without too much code duplication.
Todo:
* Move conversion code to a different file that can be used from the operator and modifier.
* Figure out what causes remaining cycles render tests to fail:
* Some test change a little bit, but it's not clear to me why and if that's an issue. It might be that this is caused by a slighly different radius per point?
* `hair basemesh intercept` definitely has to be looked at in more detail. Maybe we have to propagate a "time" (position along curve) attribute to fix this?
* `hair length info` fails, because the Length output of the new Curves Info node doesn't seem to work yet.
* `T50634 2` uses a Texture Coordinate node, which does not read data from a generic `float2` attribute.
* For Eevee this depends on D14916.