Introduction
A cross-platform, native implementation of named and unnamed event objects.
Both automatic and manual event objects are supported.
An event object waits, without polling, for the object to be fired/set.
One instance waits on the event object while another instance fires/sets
the event. Event objects are useful wherever a long-running process would
otherwise poll a resource (e.g. checking to see if uploaded data needs to
be processed).