Fully Functional - No Multi Kernel Call

Code is now feature complete except for multi kernel calls. Input sizes
larger than 24000 genes will not be run on CUDA but can still run on a
computer with sufficient RAM (16GB).