Wrap our PRNG interface(s) in Rust with appropriate traits
Similar to legacy/trac#24659 (moved), we should provide a way to wrap our C code for getting randomness in Rust, while implementing the appropriate traits (from rand) so that we're able to switch in Rust implementations if we want later.
This is also blocking legacy/trac#23886 (moved).