Fix `rustpkg help` handling

In general, you could run "rustpkg help <cmd>" to see some specific
usage information for <cmd>.  However, this was handled in a very ad-hoc
and buggy manner.  For example, running "rustpkg help prefer" would
actually show you the usage information for the "uninstall" cmd.

This commit attempts to fix this by making Help a real Command, and
making the handing of it explicit.
"rustpkg prefer" should print the help for '"prefer" not "uninstall"
auto merge of #11470 : eminence/rust/rustpkg_help_test, r=alexcrichton

In general, you can run "rustpkg help <cmd>" to see some specific usage information for <cmd>.  However, this was handled in a very ad-hoc and buggy manner.  For example, running "rustpkg help prefer" would actually show you the usage information for the "uninstall" cmd.  Or "rustpkg help test" would show you the usage information for the "build" command.  Or "rustpkg help list" would just run the "list" command (and not show you anything usage information)

This commit attempts to fix this by making a new HelpCmd (and handling it explicitly)
Various READMEs and docs cleanup

Noticeably closes #11428.
Trim src/ README, bring back version_info everywhere
Tighten up float literal lexing.

Specifically, dissallow setting the number base for every type of float
literal, not only those that contain the decimal point. This is in line with
the description in the manual.
Use target libraries instead of host libraries. Fixes #11243
auto merge of #11338 : jhasse/rust/patch-rustpkgtarget, r=alexcrichton

#11243
Add /doc/rustuv to .gitignore
auto merge of #11477 : adridu59/rust/bug-report, r=cmr

Mostly cleanups for doc and READMEs. Fixes the bug reporting link.
auto merge of #11480 : SiegeLord/rust/float_base, r=cmr

This fixes the incorrect lexing of things like:

~~~rust
let b = 0o2f32;
let d = 0o4e6;
let f = 0o6e6f32;
~~~

and brings the float literal lexer in line with the description of the float literals in the manual.
auto merge of #11483 : kballard/rust/gitignore-doc-rustuv, r=alexcrichton
doc: build the docs for librustpkg
Restore missing line breaks in doc/index.html

a30d61b05a removed all of the trailing whitespace in doc/index.md.
Unfortunately, that trailing whitespace was actually markdown syntax for
line breaks.
Add librustuv to doc/index.md
Add inline attributes documentation.

Closes #7959.
auto merge of #11488 : kballard/rust/librustpkg-docs, r=brson
auto merge of #11491 : wting/rust/wting_7959_document_inline_attributes, r=alexcrichton

Closes #7959.
more backticks
auto merge of #11495 : kud1ing/rust/backticks, r=huonw