Change the generation of the client inits when memory is used.

Now every generated command using local memory is using the buffer
to pass the information to the server.
Make glShaderSource use the buffer.
Use the buffer to handle the out parameters for the generated.
Add the NULL termination to the generated allocation of the buffer.