Initialize and use device’s dev_id

dev_id is never initialized and defaults to 0. Correct code which did
not access device_ptrs with dev_id. Fixes segfault with multiple basic
devices (i.e. POCL_DEVICES="basic basic").
Implement CL_PROGRAM_NUM_KERNELS in clGetProgramInfo.
Implemented CL_PROGRAM_KERNEL_NAMES.

Also works when pocl_llvm_get_kernel_names returns 0,
but with empty kernel file that function segfaults instead.