added pyopencl type registration, added nullpointercheck for copy functions, fixed blob json repr made enum alternatives optional