updated deck to use deque data struct and shuffle Algorithm