Module Caml_string_extern

TODO: check with String.of_char it's quite common that we have

Caml_string_extern.of_char x.[0] 

It would be nice to generate code as below

x[0]
let of_char: char => string;
let get_string_unsafe: string => int => string;
let toUpperCase: string => string;
let of_int: int => base:int => string;
let slice: string => int => int => string;
let slice_rest: string => int => string;
let index_of: string => string => int;
let of_small_int_array: array(int) => string;
let of_small_int32_array: array(int32) => string;
let lastIndexOf: string => string => int;
let length: string => int;
let unsafe_get: string => int => char;
let unsafe_set: bytes => int => char => unit;
let repeat: string => int => string;