Automatically figure out event result types.

To make things easier, event_traits<Event> will now automatically figure
out the event result type, be it a single type or a type sequence, in
which case it will be converted to a corresponding tuple type.