Doesn't ```return not self == other``` cut the mustard? Is there a case where we actually need to be returning NotImplemented with ```__ne__``` ?