Merge branch 'maint'
fix a race condition when there're several applications in apps directory
Fix rest_for_one and one_for_all restarting a child not terminated

In rest_for_one and one_for_all supervisors one child dying can cause
multiple children to be restarted. Previously if the child that caused
the restart is started successfully but another child fails to start,
the supervisor would not terminate this child with the other
successfully restarted children as no record of the pid was kept. Thus
the supervisor would try to start this child again. This could lead to
multiples of the same child or if the child is registered cause repeated
attempts at starting this child - until the max restart threshold was
reached.

Now the child that failed to start becomes the restarting child, instead
of staying with the same child, for the next restart attempt. This has
the following side effects:

1) In one_for_all the new version of the child that original died is
   terminated before a restart attempt is made.

2) In rest_for_one all succesfully restarted children are not terminated
   and restarting continues from the child that failed to start.
Merge branch 'sv/stdlib/sys-get-state/OTP-11013' into maint

* sv/stdlib/sys-get-state/OTP-11013:
  Removed ?line macro
  add sys:get_state/1,2 and sys:replace_state/2,3
  update sys:get_status/2,3 documentation for gen_event
Merge branch 'maint'
Merge branch 'siri/common_test/force_stop-skip_rest/OTP-10856' into maint

* siri/common_test/force_stop-skip_rest/OTP-10856:
  [common_test] Document '-force_stop skip_rest' option to ct_run
  [common_test] Add tests for repeated testruns
  [common_test] Add support for testing repeated testruns
  [common_test] Add -force_stop skip_rest option when repeating tests
Merge branch 'siri/test_server/hanging-io-request/OTP-10991' into maint

* siri/test_server/hanging-io-request/OTP-10991:
  [test_server] Don't hang due to invalid io request
Merge branch 'maint'
Remove unused XML files

incompatible.xml and highlights.xml haven't been included anywhere
for a long time.
Make port close not be delayed

Drivers are dereferenced when the port is completely gone, in the operation
scheduled with erts_schedule_thr_prgr_later_op. If we use
erts_schedule_thr_prgr_later_cleanup_op, it may not happen
for a long time and the driver can not be unloaded.

We can not dereference the driver before the thread_progress_later
thing, because references to the driver may exist in other threads, so
the unloading of the driver may free locks held by other schedulers and
whatnot.
Merge branch 'rickard/is_process_alive/OTP-10926' into maint-r16

* rickard/is_process_alive/OTP-10926:
  Fix erlang:is_process_alive/1
Merge branch 'rickard/thr_prgr_later_op/OTP-10994' into maint-r16

* rickard/thr_prgr_later_op/OTP-10994:
  Make port close not be delayed
  Be less eager requesting wakeup for cleanup jobs
Merge branch 'rickard/sys-flags/OTP-11000' into maint-r16

* rickard/sys-flags/OTP-11000:
  Fix `+sws' and `+swt' system flags
Merge branch 'egil/r16/fix-delete_element/OTP-10932' into maint-r16

* egil/r16/fix-delete_element/OTP-10932:
  erts: Refactor erlang:insert_element/3 for clarity
  erts: Fix copy error in erlang:delete_element/2
Prepare release
Merge branch 'hb/remove_unused_xml_files' into maint

* hb/remove_unused_xml_files:
  Remove unused XML files
Merge branch 'maint'

* maint:
  Remove unused XML files
Fixed broken links in sys.html
ssl & crypto: Documentation enhancements

OTP-10450
ssh: If not valid expression, rather than generate a error, try to use the cmd.