Adding EventSenderSuite

- Updating event sender to return an option instead of using isEmpty and
  head
- Fixing some miscellaneous bugs