Create man pages for rust tools
Add new manpages to install script
Updated rustpkg man page to match 0.7
Constrain maximum lifetime of stack closures that capture variables to
be limited by the innermost repeating scope.

Fixes #7336.
Fixed examples

The examples were still using `core::` instead of `std::`
All of the examples needed a `use std::rand;` at the top to compile
Most of the examples had
    `rng = rand::rng();`
instead of
    `let mut rng = rand::rng();`
Convert json Reader to iterators

This is much faster for strings, and eventually when there is a
buffered reader of some sort.

Reading example.json 100 times before was around 1.18s.
After:
- reading from string 0.68s
- reading from file 1.08s (extra time is all in io::Reader)
remove unused imports
unnecessarily mutable variables
unused variable
auto merge of #7693 : korenchkin/rust/fixdoc_rand, r=cmr

All of the examples were still using `core::` instead of `std::` and  needed a `use std::rand;` at the top to compile
Most of the examples had
    `rng = rand::rng();`
instead of
    `let mut rng = rand::rng();`
auto merge of #7704 : glinscott/rust/json_iter, r=erickt

This is much faster for strings, and eventually when there is a
buffered reader of some sort, will be much faster for files.

Reading example.json 100 times before was around 1.18s.
After:
- reading from string 0.68s
- reading from file 1.08s (extra time is all in io::Reader)

Also:
- fixes #7611 - error when parsing strings and we hit EOF
- updates definition of whitespace in json should only be the 4 ascii whitespace chars
auto merge of #7708 : bcully/rust/warnings, r=thestinger

Just getting my feet wet.
dlist: A new implementation of an owned doubly-linked list

This is an owned sendable linked list which allows insertion and
deletion at both ends, with fast traversal through iteration, and fast
append/prepend.

It is indended to replace the previous managed DList with exposed list
nodes. It does not match it feature by feature, but DList could grow
more methods if needed.
dlist: Implement size_hint properly for all iterators
dlist: Introduce a struct Rawlink mimicing Option<T> for a raw pointer

Rawlink<T> holds a *mut T pointer and can convert itself to Option<&mut T>.
The null pointer is of course None.
dlist: Collect a common pattern into link_with_prev()
dlist: Put all tests into a tests module

The exception is the function check_links which needs access to struct
Node (which is not pub).
dlist: Expose ListInsertion trait with insert_before and peek_next

An iterator that allows mutating the list is very useful but needs care
to not be unsound. ListIteration exposes only insert_before (used for
insert_ordered) and peek_next so far.
extra: Add mod container with trait Deque
extra: Rename deque::Deque to ringbuf::RingBuf and impl trait Deque

Let RingBuf have a logical name for a concrete type, and Deque is
used for the Deque trait (implemented by RingBuf and dlist).