Fix error when filename is null

Seen occasionally on Windows when running test/file.jl
doc: excise nonexistent svds (Fix #6159)
Use similar instead of Array when allocating new arrays.
Export options.h referenced by julia.h
binomial no longer uses Float64 internally.

Replaces the old accumulation step, using x=*(nn::Float64, rr::Float64)
with x::T=xt=div(widemul(x,nn), rr). Also tests for integer overflow.

Fix #6154.
document and export `widen`. closes #6169
Merge pull request #6163 from JuliaLang/cjh/fix-6154

binomial no longer uses Float64 internally.
also export widemul (ref #6169)

widen methods for Rational and Complex
Merge branch 'master' of github.com:JuliaLang/julia
Merge pull request #6174 from felipecruz/feature/export_options_h

Export options.h referenced by julia.h
Merge pull request #6167 from JuliaLang/anj/similar

Use `similar` instead of `Array` when allocating new arrays.
Merge pull request #6146 from tkelman/patch-4

Fix error when filename is null
fix Base.Sort.Float.issignleft bug: 0.0 before -0.0 in reverse mode.
refactoring to separate subtype and morespecific
sortperm: one way to fix #6177, but with 34% slowdown.

The approach here is to change the Perm comparison to break ties
by index values. This allows using an unstable algorithm getting
stable sortperm results but kills performance despite the switch
to quicksort.
Merge branch 'master' of github.com:JuliaLang/julia
base/ordering.jl: simplified lexicographic permutation comparison.
fix #6142

port the latest logic from tuple_morespecific to tuple_match
Merge branch 'master' of github.com:JuliaLang/julia
Merge pull request #6160 from JuliaLang/cjh/fix-6159

doc: excise nonexistent svds