Inheritance: IMessage
 private void ApplyChange(Event @event, bool isNew)
 {
     this.AsDynamic().Apply(@event);
     if(isNew) _changes.Add(@event);
 }
 public EventDescriptor(Guid id, Event eventData, int version)
 {
     EventData = eventData;
     Version = version;
     Id = id;
 }
 protected void ApplyChange(Event @event)
 {
     ApplyChange(@event, true);
 }