Fix JuliaLang/julia#6665

Provides airyx in addition to bessel[jyikh]x
Updates following discussion in JuliaLang/julia#6665

Rather than introducing bessel[hijky]x functions, introduce optional
positional argument to bessel[hijky] and airy for scaled version.
Merge branch 'master' of https://github.com/JuliaLang/julia into besselx

Conflicts:
	base/math.jl

Keeping track of special functions reorganization
fa742208b31a6640a82a6bf29f97c21cba471ff0
don't shell out for mv
Revert back to bessel[ijkhy]x function signature

Change as discussed in JuliaLang/julia#6665.

Also fixed JuliaLang/julia#6564 that was omitted in this branch.
fix sparse getindex regression.
also replaced binarysearch with methods from sort.jl
ref #7131, #7047
RFC: added performance tests for sparse getindex + a README file
Merge pull request #7177 from mauro3/sparse_perf

RFC: added performance tests for sparse getindex + a README file
Fix function header for full!(Triangular)
disable some optimization passes that are doing more harm than good

ref #6112
Merge pull request #7046 from hayd/dont_shell_out

FIX don't shell out when you can mv
Merge pull request #6688 from jdrugo/besselx

Fix JuliaLang/julia#6665: adding exp-scaled Bessel functions
allow inlining of call1 sites, where the types may not match exactly
convert inline typeassert into MethodError
Undef is a perfectly fine type, ANY is less fine
simplify and improve inliner logic
fix call args inlining length bug
inliner patch cleanup and turn 'occurances' into the more meaningful descriptor 'cost'
iceil is not available to inference.jl
tweak inlining threshold