ENH: Remove unnecessary broadcasting notation restrictions in einsum.

In a case where 'ik,kj->ij' works, einsum would raise an error for
'ik,k...->i...' because the 'ik' did not have ellipsis

In einsum.c.src prepare_op_axes() pass all 'broadcast' cases through the
'RIGHT' case (interation from the end).

Since the BROADCAST variable is not longer needed, all instances of it have
been removed from einsum.c.src

test_einsum.py - adds a test_einsum_broadcast case.
Merge pull request #4183 from charris/gh-4099

ENH: Remove unnecessary broadcasting notation restrictions in einsum.
BUG: Fix typos in conversion_utils

Unparenthesized logical expressions in if statements caused clang
compilation failure on OSX.
BUG: fix large file support on 32 bit systems

On linux large file support must be enabled and ftello used to avoid
overflows. The result must not be converted to a size_t, but a long
long.
BUG: fix npy_PyFile_Dup error handling

no caller deals with the -1.
TST: run 32 bit test with python3
TST: run slow chroot test earlier for better load balancing
MAINT: linalg: prune unused routines from lapack_lite
MAINT: multiarray: fix types

convert_datatype.c and number.c now compile without warnings.
MAINT: umath: get rid of "statement with no effect" warning

(What was this line for anyway?)
Merge pull request #4061 from larsmans/c-fixes

MAINT: Minor C fixes
ENH: optimize np.where via nditer with external loop

Implementation via PyArray_Choose is very slow, a direct implementation
is 10 times faster.
Optimizing Choose is more complicated due to its higher complexity and
would require specialization for optimal np.where anyway, but it is
something that could be done in future.
ENH: improve new where function

Allow object and zerosized iteration and move bool casting of mask into
the iterator logic and improve tests appropriately.
MAINT: add an explicit check on zero iteration
TST: core: fix tofile file positioning test

Python 2 I/O is a thin wrapper on FILE* C-API. All Python code must
follow the ANSI C requirement (see man fopen) that there is a seek or a
flush between reads and writes, otherwise the behavior is undefined.
Whether this is required depends on the CRT implementation; glibc
doesn't seem to require it, but OSX apparently does.

Fixes gh-4189
MAINT: move array creation earlier and use goto for deallocs
ENH: avoid more thread save/restores for small iteration counts

Releasing the GIL is not worthwhile for small loop iteration counts.
This was previously only done for non-reduction ufuncs.
Do this now also for reductions and assignments.
Improves performance of small reductions by about 10% as they avoid two
save and restores.
DOC: site.cfg: warn against OpenBLAS and multiprocessing

Fixes #654 by not fixing it; I don't think NumPy *can* actually fix
the problem as it's a design flaw in Python's multiprocessing. Listed
various alternatives (Python 3.4 forkserver, single-threaded OpenBLAS,
Python threading).
Merge pull request #4194 from larsmans/openblas-docs

DOC: site.cfg: warn against OpenBLAS and multiprocessing
Merge pull request #4196 from pv/fix-tofile-test-osx

TST: core: fix tofile file positioning test