ocaml: Use 'bytes' instead of 'string'

For mutable uses of byte sequences, use the bytes type instead of the
string type.  This eliminates some warnings.
ocaml: Eliminate warning 44

Use 'open!' explicitly to indicate shadowing is intentional, and
reenable warning 44 so that it can catch possible accidental shadows.