Break out common OpenCL kernel stuff to headers.
Oldoffice-opencl format added. Closes #719, see also #736.