Move to Zig 0.17 v0.2.0
The devshell takes nixpkgs' zig_0_17 as it is: 0.17's test runner no longer needs the one-line patch that let a fuzz-mode test binary compile on 0.16. The fuzz tests are compiled with LLVM even in Debug, since the self-hosted backend emits no coverage instrumentation, and with that `zig build fuzz --fuzz` works -- the prose that said it did not is rewritten to say what each of the two fuzzing loops is for. The port itself: `b.args` gives way to `addPassthruArgs`, the docs server takes the emitted docs directory rather than an install path read while configuring, `std.hash.crc.Crc` is now `Generic`, and the `**` operator is gone, so repeated arrays are `@splat`. Version 0.2.0; 0.1.0 is the last release for Zig 0.16, on branch zig-0.16. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011LxKSHfsh7WFw27BXHzxcu