Add jump functions (`jump`, `long_jump`) for `Xoshiro` (#47743)
Straightforward implementations given
https://xoshiro.di.unimi.it/xoshiro256plusplus.c
This is useful functionality which does not interfere with any existing
code. Utility aside, it is arguable that the jump functions are
necessary to complete the implementation of `xoshiro256++` tooling. In
essence, given that the `xoshiro` family supports jump functions, we
would be remiss to neglect this capability.
For most users, I expect that the existing `TaskLocalRNG` is more than
sufficient (hence, why I propose that this not be exported, just like
`seed!`).
However, if/when one does want to total control, jump functions are a
requirement. Use cases arise when one wishes to utilize a single seed
(with state advanced sufficiently far as to give non-overlapping
subsequences) as the basis for a parallel computation. The alternative
is manual seeding, which
lacks the flexibility required for testing (imagine a program which
requires a variable number of sub-sequences, one for each parallel
portion).
If further justification is needed, [good
precedent](https://docs.rs/rand_xoshiro/latest/rand_xoshiro/struct.Xoshiro256PlusPlus.html)
exists.