Refactored  Deck to use IShuffler