added some logic, bug in removeFromDeck()