unit tests, swigpy tool and opencl versions

- wrote few more unit tests
- created swigpy tool for a convenient creation of swig wrappers for
  python
- approached the problem of loading different OpenCL versions,
  especially when OpenCL.h version is not in sync with OpenCL.so.