OK, in CVS twisted interfaces now act a lot more like Zope's - __implements__ is a single object or a tuple (or tuple of tuples, etc.) and the check if an instance implements an interface is done on the instance, not on the object's class.