Overriding equals and hash on InputPoint and BasePoint so that we can do proper merging of lists using contains() and friends.