[WIP] Change to nvcc toolchain
See discussion in #1 .
Instead of using cuBLAS I changed most of the code to use thrust (comes now by default with CUDA) instead. This simplifies the code a lot in many places.
Also quickvecs complex type is now thrust::complex
instead of std::complex
. When integrating this into elsa, we need to cast the type to std::complex
.
For the elsa migration, I propose that we keep this PR pending until I have created an elsa PR which uses this quickvec branch and we see that everyhting is working in elsa. I indicated this by [WIP] tag. Once the elsa PR is available, we can merge both PRs in quick succession and everything should go smoothly :).