Make some improvements to the Scoped Values documentation. (#53628)
Fixes #53471.
One thing to note, I changed the signature in the `with` docstring from
this:
```julia
with(f, (var::ScopedValue{T} => val::T)...)
```
to this:
```julia
with(f, (var::ScopedValue{T} => val)...)
```
...since the original signature in the docstring was too strict. I also
added this sentence to the docstring:
```julia
`val` will be converted to type `T`.
```
I added a couple tests that verify the conversion behavior.