Patch from Georg Brandl and me for #1493
Remove unbound method objects
diff --git a/Lib/inspect.py b/Lib/inspect.py
index d0608d7..3a95796 100644
--- a/Lib/inspect.py
+++ b/Lib/inspect.py
@@ -57,7 +57,7 @@
         __name__        name with which this method was defined
         im_class        class object in which this method belongs
         im_func         function object containing implementation of method
-        im_self         instance to which this method is bound, or None"""
+        im_self         instance to which this method is bound"""
     return isinstance(object, types.MethodType)
 
 def ismethoddescriptor(object):
@@ -269,7 +269,7 @@
             kind = "class method"
         elif isinstance(obj, property):
             kind = "property"
-        elif (ismethod(obj_via_getattr) or
+        elif (isfunction(obj_via_getattr) or
               ismethoddescriptor(obj_via_getattr)):
             kind = "method"
         else: