Cleanup of the file

Consisting of three items:
 - Eliminate uses of is_subtype/2 in specs
 - Change module-local void functions to return 'ok' instead of []
 - Make sure there are no dialyzer warnings with --Wunmatched_returns
Updated primary bootstrap
compiler: Conform returned errors to the documented format

ErrorInfo is documented to be:

  {ErrorLine,Module,ErrorDescriptor}

but for some errors with line numbers it would look like:

  {Module,ErrorDescriptor}

Ensure that all ErrorInfo tuples have three elements. Use 'none'
instead of a line number:

  {none,Module,ErrorDescriptor}

There already are errors that return 'none' when no line number is
available, but that convention was not documented. Mention it in the
documentation.

Also make sure that the compiler will not print 'none' as a line
number in error messages (if the 'report_errors' option is given) as
that looks stupid. That is, when attempting to compile a non-existing
module, the error message should be:

  non-existing.erl: no such file or directory

and not:

  non-existing.erl:none: no such file or directory
Merge branch 'ks/hipe_unified_loader-cleanup/OTP-11301' into maint

* ks/hipe_unified_loader-cleanup/OTP-11301:
  Updated primary bootstrap
  Cleanup of the file
Merge branch 'maint'

Conflicts:
	bootstrap/lib/kernel/ebin/hipe_unified_loader.beam
Merge branch 'bjorn/compiler/return_errors/OTP-11304' into maint

* bjorn/compiler/return_errors/OTP-11304:
  compiler: Conform returned errors to the documented format
Merge branch 'maint'

* maint:
  compiler: Conform returned errors to the documented format