logic for create and shuffle deck