Port fileno() to use self.client correctly
Port to gobject-introspection (PyGObject v3.x)