Support host count in machinefile

- Support the syntax `[user@]host[:port][*count] [bind_addr]` in the
  machinefile.
- Initial code just re-writes the list fed to addprocs() by repeating the host
  as specified, so there is no user-visible change.
Move the host count to the beginning: [count*]...
add hexfloat (%a) support for printf
generalized and more efficient cat implementation
Ensure those two pointers are rooted.
Root a forgotten tuple
make Char no longer a subtype of Integer

Char now supports a limited set of "integer like" behavior.

* comparisons with integers
* Char - Char = Int
* Char + Int = Char

update docs and add a NEWS.md entry
Avoid undefined checks for types that are always fully initialized
Merge pull request #8819 from JuliaLang/ob/membug

Fix two memory errors
Merge pull request #8816 from JuliaLang/jcb/char_not_integer

Make Char no longer a subtype of Integer
ARM: use 8-byte alignment (fixes #8314)
fix compiler warning
Update mathematical-operations.rst

I added a note that the updating-operators can change the type.  This is implicit in the current manual, but it nonetheless threw me for a loop the first time it happened to me (this is different, e.g., from C++), so I thought it should be made explicit.
Simplify wording and rework example as doctest
Fix typo in NEWS.md and update links.
fix incorrect mod rounding
need to initialize new gc root in jl_compute_type_union
add helpful quotes to some error messages. closes #8837
Fix #6804

floor(2^31-1*runif(1)) was always returning the value 2147483647. It is now floor(runif(1, min=0, max=2^31-1))
Merge pull request #8841 from pabloferz/pf/perf

Fix #6804