Basic GPU handling and simple CI test for GPUs
GPU module, setup/init, and simple CI test for GPUs. Tests basic functionality of GPU module, but does not do anything if no GPUs or cupy available.
Implements the first step in the merge path of the GPU version in #377 (closed)