[Chore] Upgrade to rand 0.9
rand 0.9 has been out for a while, and some of our dependencies use it already. However, the API changed quite a bit, which is why I have not attempted to upgrade yet.
This page outlines all the changes and provides a guide to upgrading. Ideally, we would use AI to do this (rather involved) update for us, similar to how #2783 was done.
I am opening this issue, so folks can take a look at the upgrade guide and see if there is anything that could cause problems when we upgrade. For example, the upgrade guide mentions some breaking changes for WASM.
The API changes look innocent enough, mainly naming updates, however there will be a lot of changes.
The WASM breakages might be more concerning - @iamalwaysuncomfortable