Shared pathspec primitive for sley.
This crate owns the byte-faithful port of git's wildmatch engine
(wildmatch.c::dowild) and the single-item pathspec matcher
(match_pathspec_item), plus a [Pathspec] type that parses git's
pathspec magic prefixes (:(exclude), :(icase), :(literal),
:(glob), :(top), :(attr:...), and the shorthand :!/:^/:/).
Four clusters consume this primitive: the rev-walk (sley-rev), diff,
the worktree walker (sley-worktree, which re-exports the engine for its
ls-files path), and the CLI. Keeping the wildmatch port and the magic
parser in one low-level crate (depending only on sley-core) means there
is exactly one implementation of git's matching semantics to keep in sync
with the 2.54 oracle.
STAGE-A scope: parsing + per-path matches. The TREESAME / history
simplification that consumes a Pathspec to prune the rev-walk is
STAGE-B; this crate only provides the matching primitive that stage will
drive.