public function save(AggregateRoot $root)
    {
        $snapshot = new Snapshot(
            $root,
            $root->getVersion(),
            new \DateTime
        );

        $this->snapshots[(string) $root->getIdentity()][] = $snapshot;
    }