Fix deep list argument error under Windows in os:cmd/1

Because of leeway in implementing os:cmd/1 under different OS there is
a difference in results when calling it with deep list
argument. os:cmd/1 specifies io_lib:chars() type for its argument and
io_lib functions can produce deep lists inspite of io_lib:chars()
result type specification. This commit flattens the argument for
erlang:open_port/2 (which is used under Windows) and expands the
os_SUITE to regress the bug.
Remove unnecessary whitespaces in os.erl and os_SUITE.erl

Conflicts:

	lib/kernel/test/os_SUITE.erl
kernel: redefined deep_list_command test
Added primary bootstrap for os.beam
Merge branch 'dg/win_icon' into pu
Merge branch 'rc/break-out-asserts' into pu
Merge branch 'nm/mnesia_idx_insert_speedup' into pu
Merge branch 'tja/erl_pp_options' into pu
Merge branch 'nox/disambiguate-equal-binary' into pu
Merge branch 'hsv/add_init_to_lists' into pu
Merge branch 'nox/fix-epp-file-attrs' into pu
Merge branch 'nox/fix-silent-rules' into pu
Merge branch 'nox/fix-warnings' into pu
Merge branch 'nox/wide-chars' into pu
Merge branch 'sla/reltool_copy_file_not_owner_fix' into pu
Merge branch 'sla/odbc_in_non_standard_location' into pu
Merge branch 'avi/fix-os-cmd-win' into pu
Merge branch 'bjorn/fix-encoding' into pu