added OpenCL bindings and tests