OpenCL formats: Use size_t instead of int in a bunch of places because
of problems where eg. a GWS of 32M x buffer size of 64 ends up in 2G
which doesn't fit in a signed int.