Customizable Fisher-Yates shuffle