#5779: improve support for structured constants (better propagation, sharing, cleaner representation).  Also fix #6337 (constants emitted several times).

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14444 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02