Refactor and rearrange.  Add a top level gpgpu module.