add deck method binarysearch and shuffle