redo __eq__ silliness by overriding to make more obvious
fix issue #128 for clang