Change the return value of hipe_bifs:remove_refs_from/1

In order to avoid an ummatched return warning in erts and make the code
more sane, the return value of the bif was changed from [] to 'ok'.
(Probably more hipe_bifs need such changes but they will have to wait.)

While at it, the code of various functions in hipe_unified_loader was
shortened by using lists:foreach/1 instead of explicit recursion.
Support for types with the same name and different arity
Update Dialyzer's documentation
Minor refactoring
Updated to fit spec of -type part()
Remove dialyzer nowarn_unused_function workaround

The workaround (commit 57d5564f) was to dialyzer only understanding
nowarn_unused_function on individual functions. This is no longer the
case as of R15B01 (commit 477fd95a).
Make tweaks

Add a 'strict' target to compile with -Werror and fix a dependency.
Reorder test suites alphabetically. The two suites that currently take
the longest to run conveniently come last.
noncharacter code points are allowed
erts: Fix code:is_module_native

code:is_module_native returned false for hipe compiled module if
the first function in the module was a BIF stub
Add cover target to test/Makefile
Update appup for diameter-1.4.1 in R16B

Also add comments to identify the corresponding OTP releases.
Purposely don't use regexp version numbers to be explicit about
previously released versions. (Could use them in one direction but then
app suite needs to be adapted.)
vsn -> 1.4.1
tests: Add latin1 chars atom test
erts: Fix atom hash for latin1 characters

Non ASCII latin1 characters were hashed as utf8 which breaks
compatability.
Fixed test to allow for lists:foreach/2 call
Code simplifications + take out obsolete note
Simplify a case construct using a boolean operator
Simplify a case construct using inequality
Code simplification
Native code compilation changes

Add more files to be compiled to native code and
do the native code compilation in parallel if there are enough cores.