Adds the Rust port (surface::surface_cache::p2), the C++ shim, the ffi
wrapper, the difftest runner and fixtures. Wires the SmPlane override of
IsSingularity into the surface cache's Bezier approximation (p1).
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FsWWaoeGNWKgzeGrF2Pkn5