GPU Support start

Works, but hangs the GPU with too large depth.
No sample support yet either.
Need to split up the image into smaller parts and render seperately.