Uniform and weighted shuffling and sampling with Alea