Reworked all equals methods

I wonder why this method is necessary. I tried to drop it but then the tests fail. I did not investigated why.