Unicode Normalization for IRIs

Summary

Implement Unicode normalization for IRI comparison.

Background

IRIs should be normalized using NFC (Canonical Decomposition, followed by Canonical Composition) before comparison.

Requirements

  • NFC normalization for IRI components
  • Case folding for comparison (where appropriate)
  • Handle combining characters

Acceptance Criteria

  • Equivalent IRIs compare as equal
  • Tests with combining characters
  • Tests with precomposed vs decomposed forms