change complex ^ tests
VersionNumber: don't allow digit-only, string-typed identifiers.

There's probably some other tightening up here that should be done
in terms of leading and trailing "-" characters, but this prevents
various potential parsing ambiguities.
hide extra calls used to implement keyword arguments in backtraces
improve contains() for ranges and add searchsorted* for ranges. fix #2877

cherry-pick of 6f814674a50fcfdd2c9c69743581b3f00e323020 and 9cc671d4f84e10bbdb941fcd34126e3d31ac6594
Merge branch 'master' of github.com:JuliaLang/julia
Fix enum.jl, and convert to use immutables
Rename all BlasDimMisMatch to DimensionMismatch - closes #2962
Merge pull request #2961 from simonster/enum

Fix enum.jl and convert to use immutables
Fix float range behavior
Collects all linear algebra errors into linalg/exceptions.jl
Fixes import locations
Merge pull request #2917 from simonbyrne/master

Change complex tests for ^
Merge pull request #2959 from simonster/range-fix

Fix float range behavior
change size of @enum type to match C code, for ccall. also alters macro escaping to make enum type accessible and simplify implementation
don't use more than 8 processes to run tests, to save memory on build workers
make searching for an editor more flexible

- use "start" or "open" as the default on Windows and Darwin
- use /etc/alternatives/editor by default on unix if it exists (fixes #2966)
- check EDITOR env var if JULIA_EDITOR is not set
- finally, if an unknown editor is set, just run it
Merge branch 'master' of github.com:JuliaLang/julia
Merge pull request #2964 from JuliaLang/jh/linalg-except

Collects all linear algebra errors into linalg/exceptions.jl
Move all aupd/eupd code to arpack.jl
Move ARPACKException to exceptions.jl
Merge remote-tracking branch 'upstream/master'