more of the callbacks now use macros
The OCaml callbacks now have the same arity
callbacks now all use CAMLlocal4 by convention
Add CAMLparam/CAMLreturn in the C callback