Major update to CUDA Context managment
Implement ScopedCurrentContext
(as in the LOFAR COBALT code), to make
sure that the CUDA context is always applied whenever a CUDA (driver
API) call is made.
There is no need to use the setCurrent()
method anymore. This makes the high-level code (e.g. the CUDA
class) a bit cleaner as well.