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.