Implemented fisher-yates algorithm for shuffling