Add equals() and hashcode() overrides