Add CUDA C/C++ support

Closes #147