More performance improvement, and bug correction.

Now, if the c function operates only on numbers, cwrap will return the C function directly, because no type conversion is needed.
That makes both cwrap and the functions it generates faster.

There is already a writeStringToMemory function. So call in directly rather than calling intArrayFromString and than writeArrayToMemory.

Bug correction: stack memory was not allocated for functions with several string arguments that were called with 0 as their first argument.
Performance improvements and code simplification in ccall

Use writeStringToMemory instead of intArrayFromString + writeArrayToMemory
Assert that the return type of the function is correct BEFORE executing it.