Fix contains unexpected false return

In my opinion, contains should return true when used on the same object
That would make sense, and would be consistent with the behaviour of stdlib types. I think that then we could reduce the implementation of contains to just ``self.parts[:len(ptr.parts)] == ptr.parts`` (and remove the first line of the return completely).