Implements Kahan's versions of elementary complex functions…

…paying particular attention to behavior near branch cuts.

Functions: sqrt, ^, log, asin, acos, atan, tanh, asinh, acosh, atanh
Includes also the ssqs to compute the mod-squared of a complex number scaled by a power of 2 to avoid overflow/underflow
Issues
- The ^ function fails tests so is disabled for now.
- The log function works only for `Complex{FloatingPoint}`. Explicitly casting `{T<:Integer}Complex{T}` to floating-point `Complex` causes tests to fail.

Ref: [Branch cuts for complex elementary functions](http://people.freebsd.org/~das/kahan86branch.pdf)
Correctly detects for both underflow and overflow in ssqs
Fixes type error in log
Corrects underflow check
Adds edge cases for all except atanh, atan
Reorders tests
Building libjulia with NMake and Intel C++ Composer
Fix typo in macro name.
Fix cross-compiling.
Merge remote-tracking branch 'main/master' into windows
Import exceptions in lapack.jl
Merge remote-tracking branch 'main/master' into windows

Conflicts:
	src/ccall.cpp
	src/jl_uv.c
Normalize whitespace in contrib/julia.xml
Merge pull request #3107 from waldir/master

Normalize whitespace in contrib/julia.xml
Merge pull request #3103 from simonster/lapack-exceptions

Import exceptions in lapack.jl
BigInt operations: trailing_{zeros,ones} and >>>.

I chose to define >>> as fundamental and then provide a dispatch
for >> in terms of >>> because the implementation of the shift for
BigInts is inherently arithmetic, not logical. There is actually
no logical shift operator for BigInts, I wonder if we should define
it at all.
CPU_CORES: pretend there are any number via JULIA_CPU_CORES env var.
Merge branch 'master' of github.com:JuliaLang/julia
update manual: safe_char() is deprecated; fix line wrapping
Float{64,32} == Rational: implement exact equality checking [#3102]

This is a fairly insane way to do this, but it works robustly. Even
works for Rational{BigInt}, which I really need to add checks for,
along with all the other functionality.

Temporarily disable some tests in test/numbers.jl until I can sort
out what they ought to check, if anything.
simpler transitive Float == Rational equality implementation [#3102].
re-enable all tests in numbers (with slight modification).