story is a value so needs equals and hashcode methods