(received, active), not (active, active)
Separate targets for clang asan and tsan targets.
The --period option does take an argument.
clang threadsanitizer doesn't need the pie flags.

Also don't have separate binaries for the different clang targets.
Use basename consistently.
Add clang.msan target

MemorySanitizer: --fsanitize=memory.  Similar but complementary to
AddressSanitizer (does uninitialized reads).  Didn't find anything.