parSafeMember fix

The motivation for this patch is to stop this test from periodically failing under certain configurations.

This inner loop has been rewritten to improve clarity. A 'trials' config var has been added to provide more flexibility when tuning the problem size. A verification step has also been added which ought to catch glaring issues.

Previously we were choosing a range based on the condition "n & 1". I believe this test would be more valuable if the condition was instead "t & 1", which varies the range (ascending/descending) based on the current task.

The overall problem size has been reduced significantly to avoid timeouts. Compiling with --fast should be more useful when attempting to stress the test and expose a race condition, while also reducing the chance for timeouts.