ocl: add support for initialization from user-provided OpenCL handles