remove useless semicolons in Python code

--HG--
extra : rebase_source : cf2a0d87f2f903179cc954ff092c79fef7b13a34
it should be enough to restart tracking the object at the end of tp_dealloc() only if there really is a base type that might rely on it

--HG--
extra : rebase_source : 8a20a41f35f9b5d1aaa2a916b52403bd0cb145fc
fix CPython compatibility problem on lookup failure in optimised PyDict_GetItem()
rewrite dict.setdefault() optimisation to fix double hashing in Py3
streamline fallback method calls in utility code
disable dict.setdefault() test in Py2.4 which tests for a bug in that version
remove spurious semicolons from C macros
fix test after changing internal method calling (test finally behaves as expected)
reduce attribute lookup overhead a bit
simplify pop() optimisation utility code
fix accidental double wrap-around of negative indices in pop() optimisation
fix test behaviour that varies depending on CPython version and py_debug setting
use Py2/3 specific builtin checks in dict.setdefault() optimisation
move __Pyx_GetName() into external utility file and make it use faster __Pyx_PyObject_GetAttrStr()
enable MethodDispatcherTransform() to dispatch also on special method calls triggered by operators
add tests for MethodDispatcherTransform
fix build
Add support for unicode slicing
Add unicode slicing support
Merge branch 'master' of https://github.com/intellimath/cython