This patch introduces a `CombiningClass` type to represent the canonical combining class of a codepoint. The `fmt::Display` implementation of this type writes the human-readable name of the combining class, if there is one. This replaces the previous behaviour, which was to just print the raw byte value of the combining class.