Mod_subst: improve sharing during kn substitutions

 When user and canonical parts are physically equal, let's avoid
 computing both their substitutions : this is a waste of time and
 also potentially of memory sharing. For instance two identical
 sub-calls to subst_mp0 may produce answers that are = but not ==.

git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@16216 85f007b7-540e-0410-9357-904b9bb8a0f7