Test that backend is CUDA before using CUDA-specifics in temporary_allocator.
Test that backend is CUDA before using CUDA-specifics in temporary_allocator.

To handle the case that we are using nvcc to compile non-CUDA, e.g.
OMP, code, test that the backend THRUST_DEVICE_SYSTEM is
THRUST_DEVICE_SYSTEM_CUDA before including and using CUDA-specific
code, terminate_with_message().

jaredhoberock/thrust,jaredhoberock/thrust,thrust/thrust,jaredhoberock/thrust,jaredhoberock/thrust,thrust/thrust,jaredhoberock/thrust,andrewcorrigan/thrust-multi-permutation-iterator,andrewcorrigan/thrust-multi-permutation-iterator,thrust/thrust,andrewcorrigan/thrust-multi-permutation-iterator,thrust/thrust,thrust/thrust