An InterstateEvent wraps another event as it travels DOWN the tree.
So the originating event is a ConcreteEvent. If that event should propagate down, we wrap it in an InterstateEvent.
This allows for a paper trail as the event travels, and it allows us to figure out if a particular Interstate has processed
an event or not.