Redirect stderr from which

This avoids `which: no fetch in ($PATH)` messages when downloading dependencies. These can get pretty long.
Add quotes and an informative error message

Since [ -x  ] is true, but [ -x "" ] is false
Add more unit tests for test/random.jl in preparation for refactor
Merge pull request #5993 from jperla/master

Add more unit tests for test/random.jl in preparation for refactor
Change generalized svd to return Q and R separately. Update docs to point to svdfact and eigfact.
Reverts deterministic test of MersenneTwister. Closes #5999

The hardcoded value turns out to be platform specific.
Fix matrix * and \ for errors reported in #5953
Merge pull request #6007 from JuliaLang/anj/matvec

Fix matrix * and \ for errors reported in #5953
Merge pull request #5972 from tkelman/patch-1

Redirect stderr from which
fix #5904, assertion failure running pipelines

must be careful using functional constructs where side effects are needed
Merge branch 'master' of github.com:JuliaLang/julia
FloatRange: move the .divisor field to the end.

The initial fields match the field of Range this way.
Merge pull request #5941 from JuliaLang/anj/svd

Change generalized svd to return Q and R separately. Update docs to point to svdfact and eigfact.
Fix error message when stringpatch can't open file

"Could not open 256 for writing!" was a confusing one.
Merge pull request #6013 from tkelman/patch-2

Fix error message when stringpatch can't open file
fix ios_t layout for 32-bit. hopefully fixes #6016

also move word-size detection to platform.h where it seems to belong
allow zeros, ones, infs, nans to accept any array, not just matrices
fix produce() before consume(). closes #6010

better than an improved error message, make it work :)
Bump libuv and specify minimum Wine for xcompile

Fixes cross-compilation

- jl_stat is broken on Wine since libuv now uses NtQueryVolumeInfo
(https://github.com/joyent/libuv/commit/315d7001
and
https://github.com/joyent/libuv/commit/20a8e58a),
which is not implemented for `FileFsVolumeInformation`

```
fixme:ntdll:NtFlushInstructionCache 0xffffffffffffffff 0x1180000 524288
fixme:ntdll:NtQueryVolumeInformationFile 0xb0: volume info not supported
could not open file boot.jlwine: Unhandled page fault on read access to
0x00000008 at address 0x6e6d2617 (thread 049e), starting debugger...
```

See: https://github.com/JuliaLang/libuv/commit/a37279a1

- due to libuv changes, cross-compile must use a very recent wine.
  both uses of `getsockopt` in `libuv/win/winsock.c:uv_winsock_init` return `SOCKET_ERROR`
  on wine1.4 (which is still the default through Ubuntu 13.10).

  - Upgrading to wine1.7 from the [PPA](http://www.ubuntuupdates.org/ppa/wine) fixes the problem.

  (this `getsockopt` check never actually worked, the check
  [was previously disabled](https://github.com/joyent/libuv/commit/d170c915))
The intent of this PR is update README.windows.md with known-good-as-of-date instructions.

Key changes include:

1. stating which versions of Windows are supported as build platforms
2. promoting MSYS2 from experimental to preferred status
3. placing MSYS in a fallback position for users who cannot or prefer not to use MSYS2.
4. simplifying the shell environment setup (no changes to fstab; minimal path to avoid shadowing)
5. relying on official Python 2.x build for Windows makes MSYS[2] python redundant
6. note an idiosyncracy of the currently used version of OpenBLAS which requires an extra `make`
7. updating the paths for dependnecies, where these have changed on SourceForge

Feedback on content and style are all welcome.
Most of all, thanks to everyone who helped me get comfortable with building Julia on Windows.