Committing first working version of speckle formation on the GPU.

There is currently a memory issue such that creating local memory on
the GPU for the computation causes an error when running the kernel with
a CCD size larger than 64x64. Solution to try is allocate on the host and
pass in as global memory.