added deck shuffling function