Implement shuffle and deal