Correct a number of latent issues in `tarjan.c`

This set of changes installs a number of corrections to latent issues in the `tarjan.c` module.

Specifically,
 * Uses a portable method of zeroing a vector `int`s
 * Eliminates a few redundant explicit type conversions
 * Eliminates a release-mode only build-time warning
 * Replaces an assignment (within an `assert()`) with the intended equality test