Add __take_simple() variants for all events.
Link tests statically.
Support running tests under valgrind; say VALGRIND='valgrind whatever'.
Fix error reported by valgrind.
Distribute events behave more like the combination of regular events.

Specifically, dereferencing a distribute event is not an error; it
just dereferences the underlying events. The error will be reported
when the *underlying* events are dereferenced while active.