Added class for Device. Added factory for kernelWrapper