The find/replace helper piped `grep -rl` output into `xargs gsed` using
xargs' default whitespace splitting and quote processing, and passed the
search pattern to grep/gsed without terminating option parsing. Paths
containing spaces (or values beginning with `-`) could be split into
multiple arguments or interpreted as options rather than data.
Use NUL-delimited matching (`grep -rlZ | xargs -0`) so filenames are
passed verbatim, and add `--` after grep's options to end option parsing.
Behavior is otherwise unchanged.