Introduce opt.junk_alloc and opt.junk_free.

This patch introduces two new options, opt.junk_alloc and opt.junk_free,
making it possible to junk memory only on allocation or deallocation. As
with opt.junk, they are disabled by default and enabled on debug builds
when not under Valgrind. For compatibility, opt.junk was kept and will
imply opt.junk_alloc and opt.junk_free if enabled.
Include tests for opt.junk_alloc and opt.junk_free.