Add CUDA to CMakeLists.txt
Small changes to CMakeLists.txt
Added a new abstract type, base_memory_type
More for base_memory_type
Added cuda_host_type and cuda_device_type
Modified array_memory_block.cpp to allocate CUDA memory on either the host or device
Preliminary changes for supporting device assignment kernels
Introduced dynd_complex to replace std::complex (TODO: 6 tests not working)
dynd_complex now works completely, all tests pass
small changes to cuda_*_types
Preliminary changes for memory tests
Extended cuda_host_type and cuda_device_type, implemented more memory testing
Added an interface for data allocation in base_memory_type
Implemented single CUDA assignment kernels
Extended testing for memory types
Fixed errors in to_host, to_cuda_host, and to_cuda_device
Modifications to CUDA types, preliminary work on strided CUDA assignments
Made CUDA strided work, though messy and inefficient
Simplified base_memory_type and CUDA memory types
Completed strided assignments. TODO: Some code cleanup and some more efficient functions.