Introduce 'WaitForSingleEvent' utility to map a single event to a future
Expand BoundMember to work on events