Add slice and type convertions, bool and inverse magic methods

Also this adds a check that we do not pick up PyPy's Python.h by accident, by checking if PyTuple_GetItem is defined as a function (CPython), not as a macro (PyPy).