Java5 introduced covariant return types but we weren't supporting this properly
because MethodInfoImpl was taking into account the return type (and declaring class)
when doing the equals check.
I removed these two checks from the equals.
Covariant return types are where you override the method to return a different type.
e.g.
public class Something { public Object getSomething() {} ; } public class StringSomething { // StringSomethings return a String not an Object @Override public String getSomething() {} ; }