remove custom equals on card.  it was not matching things correctly and there was not really a need for a custom one in the first place.
Use @EqualsAndHashCode because object's equals didn't quite cut it either.