[common_test] Extend valid interval for approximate timer values in tests

When matching the result of tests of timetrap timeouts, the actual
time is measured against the expected time, and an interval of +/- 2%
was seen as correct result. This turned out to fail on some platforms
and is now changed to 5%.
[common_test] Extend timeout values for slave nodes in ct_master_SUITE

Some tests in ct_master_SUITE failed on some platforms with
boot_timeout when trying to start slave nodes. The default timeout
value was 3 seconds, and it is now extended to 10 seconds in these
tests.

To avoid similar errors with init_timeout and startup_timeout, these
are both exteded from 1 second default value to 10 seconds in this
test.
[common_test] Changed call to publick_key to use documented interface

Earlier used 'OTP-PUB-KEY':encode/2 - now public_key:der_encode/2 instead.
[common_test] Avoid hanging ct@host node if crypto does not exist

ct_netconfc:init_per_suite called ct_test_support:init_per_suite
before checking if crypto exists. This caused the slave node (ct@host)
to be started even though the suite would be skipped when crypto did
not exist - which in turn caused a hanging ct node since end_per_suite
is not run in a skipped suite. This has been corrected.
[common_test] Extend timetrap time in ct_hooks_SUITE

This suite often fails with timetrap timeout on some test machines.
Replace use of driver_send_term() with erl_drv_send_term()
Replace use of deprecated functions in test cases

driver_send_term() replaced by erl_drv_send_term().
driver_output_term() replaced by erl_drv_output_term().
Fix documentation
Add 'port_count' and 'port_limit' to system_info/1 spec
Add workaround for CentOS/RedHat writev bug to inet_drv
Clean up and make the fix work on windows.

Thanks to Tony Rogvall.
Text representation of a float formatted using given options.

This BIF solves a problem of float_to_list/1 that doesn't allow
specifying the number of digits after the decimal point when
formatting floats.

    float_to_list(Float, Options) -> string()

    Float = float()
    Options = [Option]
    Option = {decimals, Decimals::0..249} |
             {scientific, Decimals::0..249} |
             compact

Returns a string which corresponds to the text representation of
a `Float` formatted using given options.

When decimals option is specified the returned value will contain
at most `Decimals` number of digits past the decimal point.
When `compact` option is provided the trailing zeros at the end
of the list are truncated (this option is only meaningful together
with the `decimals` option). When `scientific` option is provided,
the float will be formatted using scientific notation with
`Decimals` digits of precision. If `Options` is `[]` the function
behaves like `float_to_list/1`. When using `decimals` option and
the number doesn't fit in the static internal buffer of 256 bytes
the function throws `badarg`.
Raise default reader group limit to 64
Add registered server names to app file

This was simply missed.
erts: Force windows to use two-digit exponent

sprintf on windows uses a three-digit exponent default
Bump reductions also for immediate driver calls
Merge branch 'rickard/r16/port-optimizations/OTP-10336'

* rickard/r16/port-optimizations/OTP-10336:
  Bump reductions also for immediate driver calls
  Add 'port_count' and 'port_limit' to system_info/1 spec
  Fix documentation
  Replace use of deprecated functions in test cases
  Replace use of driver_send_term() with erl_drv_send_term()

Conflicts:
	erts/preloaded/ebin/erlang.beam
Add testcases for strange port scheduling scenarios
Merge branch 'rickard/rg-default/OTP-10737'

* rickard/rg-default/OTP-10737:
  Raise default reader group limit to 64
Merge branch 'lukas/erts/busy-port-tests/OTP-10336'

* lukas/erts/busy-port-tests/OTP-10336:
  Add testcases for strange port scheduling scenarios