Comparing unrelated types with equals

Ported from scapegoat. Will warn if comparing unrelated types with equals (which will always return false according to contract)