Report spec discrepancy on mismatching lists

This patch enables Dialyzer to detect cases where a function has a specification
for a return type containing some list with elements different than the ones
Dialyzer's own algorithm can infer e.g. a function specified to return [atom()]
when actually [[atom()]] is returned.

Previously Dialyzer remained silent, under normal operation, seeing that these
two types have the empty list as a common element, so they were not 'completely
irrelevant'.
Bumped version numbers
Fixed some specs - ssh
public_key: Prepare for R16
Merge branch 'ia/public_key/prepare-for-release'

* ia/public_key/prepare-for-release:
  public_key: Prepare for R16
Merge branch 'fredrik/ssh/update_versions/R16'

* fredrik/ssh/update_versions/R16:
  Fixed some specs - ssh
  Bumped version numbers
Merge branch 'sa/dialyzer-list-spec/OTP-10740'

* sa/dialyzer-list-spec/OTP-10740:
  Report spec discrepancy on mismatching lists
Merge branch 'dg/win_icon' into master-pu
Merge branch 'jd/file-ram-opt-doc' into master-pu
Merge branch 'avi/fix-os-cmd-win' into master-pu
Merge branch 'sk/odbc64' into master-pu
Merge branch 'kp/odbc-empty-params' into master-pu
Merge branch 'sal/ftp' into master-pu
Merge branch 'jv/cover-patches' into master-pu
Merge branch 'sal/float_to_list_2' into master-pu
Merge branch 'hsv/http_redirect_on_post_303' into master-pu
Merge branch 'nox/scan-end-locations' into master-pu
Merge branch 'as/tls-psk-srp-suites' into master-pu