Introduce an internal function for raising Unsupported using format strings.
Include a number in the generated stub name to ensure uniqueness.

It's now easier to bind the same C function twice at different types.

Update tests to remove workarounds for name clashes.
Mark OCaml values as 'alloc', since references are boxed.

In practice, OCaml types can't be used as return types, so it doesn't
much matter whether they're marked as 'alloc'.
Tests for passing OCaml values directly to C.
Stub support for passing values directly to C.