Fix #24: Provide a more flexible Event class.