created ops for tensor and vector; rewrote kernels