Leaf::getInfo () now returns boost::shared_ptr<const NameInfo> instead of NameInfo reference as before.

SyncLogic is temporarily broken
diff --git a/model/sync-diff-state-container.h b/model/sync-diff-state-container.h
index 0f70437..9349e76 100644
--- a/model/sync-diff-state-container.h
+++ b/model/sync-diff-state-container.h
@@ -40,14 +40,8 @@
 
 namespace Sync {
 
-struct DigestHash : public std::unary_function<Digest, std::size_t>
+struct DigestPtrHash : public std::unary_function<Digest, std::size_t>
 {
-  // std::size_t
-  // operator() (const Digest &digest) const
-  // {
-  //   return digest.getHash ();
-  // }
-
   std::size_t
   operator() (DigestConstPtr digest) const
   {
@@ -55,6 +49,16 @@
   }
 };
 
+struct DigestPtrEqual : public std::unary_function<Digest, std::size_t>
+{
+  bool
+  operator() (DigestConstPtr digest1, DigestConstPtr digest2) const
+  {
+    return *digest1 == *digest2;
+  }
+};
+
+
 /// @cond include_hidden 
 struct sequenced { };
 /// @endcond
@@ -70,7 +74,8 @@
     mi::hashed_unique<
       mi::tag<hashed>,
       mi::const_mem_fun<DiffState, DigestConstPtr, &DiffState::getDigest>,
-      DigestHash
+      DigestPtrHash,
+      DigestPtrEqual
       >
     ,        
     // sequenced index to access older/newer element (like in list)