first working version of kernelc