Fix a crash in clGetKernelArgInfo

- in case the bitcode is SPIR, arg_name might be NULL
Add has_arg_metadata bitfield to struct _cl_kernel

- and test various bits in lib/CL/clGetKernelArgInfo.c for presence
  of argument metadata
make the clGetKernelArgInfo test also test SPIR bitcodes

Tests bitcode files produced by clang both with and without
the "-cl-kernel-arg-info" argument.