Add info size to device info in device wrapper

Update remaining code accordingly.
All info code seems to be working correctly, passing tests and
not leaking memory.
Use opencl.h instead of cl.h (it includes remaining OCL headers).