fix for ocamlbuild on cygwin cannot find ocamlfind

ocamlbuild should append .exe extension to filename when looking for
executables and Sys.cygiwn is set (not only Sys.win32).

From: algoriddle <szilvasy@gmail.com>

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15577 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
missing @since on List.sort_uniq

From: Simon Cruanes <simon.cruanes.2007@m4x.org>

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15579 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
Add punning for object copying expressions.

From: Jeremy Yallop <yallop@gmail.com>

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