Merge pull request #3384 from JuliaLang/kf/reviewme2

Unify libuv sizeof functions
Merge branch 'master' of github.com:JuliaLang/julia
promote(rational,float) => float again [#3378]

Revert promotion behavior of rationals with floating-point values
to behavior prior to 6125749a18 and 24dbefc380, i.e. floating-point
wins. Also includes a couple of promotion tweaks for MathConsts.

See discussion at

https://groups.google.com/forum/?fromgroups#!searchin/julia-dev/rational/julia-dev/2JcZdFKisis/Ag9rBJrrqQQJ
Merge branch 'master' of github.com:JuliaLang/julia
give an error for the ambiguous syntax "let x = 1 y = 2 ..."
(disabled) Revert "Revert "partially fix #2149, partially support more
efficient struct return (disabled). unfortunately this would break some
struct returns while making other work -- this needs to be selectively
enabled for different possible return types"

This reverts commit 4fa936436a1ebb44b4e73023e557d3f686f8dacc.

Conflicts:
	src/ccall.cpp
Add ability to use system BLAS, but build your own LAPACK. (#3365)
fix mistake in my rewrite of wait_success
Merge branch 'master' of github.com:JuliaLang/julia
fix scheduler regression that broke the package manager
happened during the Condition rewrite
fix spawn test that incorrectly used readandwrite() on a process
redirected to a file.
process ids are independent of nprocs()
Fixed loop bug in require()
Changed names to procs() and workers()
Windows: fix (cross-)build
small fix for #3401
similar to #3401, fix for Set{T}
tests for setdiff
Instructions for downloading all the libraries first, and building on
a computer that does not have access to the outside world.
Merge pull request #3402 from sbos/master

RFC: fix for #3401
use delete!(s,k,nothing) instead of contains(s,k) && delete!(s,k).

Close #3401. This avoids having to do the element lookup twice.