Implemented the CUDA error check function

Finished updated the CUDA utilities file with implementations, and
changed the file to .cuh (it has CUDA library calls). We should be able
to now use the cudaCheck() macro on a CUDA function call to handle the
error. For kernel calls or other asynchronous calls, use the following
command:

cudaCheck(cudaGetLastError());

If we need to check errors that occured during a kernel call, then use
the following command after the kernel call:

cudaCheck(cudaDeviceSynchronize());

This will slow down the program slightly and should only really be used
in debug mode, but it will tell us exactly which kernel call failed
immediately after it is called.