add VersionedAggregateRoot support