Fix some harmless warnings of OCaml 4.02

Change Array.create into Array.make, and avoid implicit removal of optional
parameters. I have checked that (with or without these changes) the code
compiles with both 3.12 and 4.02.

Remaining warnings with 4.02 include mutable uses of String as well as
the use of Lazy.lazy_from_val. We need some configure-magic to fix those
without breaking backward compatibility.