Use a Map to store the cards in play

As we discussed.  I also refactored a few minor things.