Features/memory leaks

* added missing deconstructors
* us Py_CLEAR through the whole lib
* refactorization