remove jniContext attribute from KernelArg
modify KernelRunner to use a map of entrypoints
split calculation of kernelargs into multiple methods