At some point we will need variable and solver support for homogeneous coordinates, e.g. `Position3h`