Fix missing CL_KERNEL_ARG_ADDRESS_PRIVATE
Fix messages in assert() calls
The number of kernel metadata is varying

- SPIR has one extra and one optional metadata.
Metadata structure is different when using SPIR

- arg_name only present with a compiler switch,
  so clear the memory with memset