BUG: Fix exceptions being swallowed by fromiter.

All exceptions from underlying iterator were being collapsed into a
generic one. This allows the original exception to propagate.

Closes gh-2592.
TST: Add tests for exceptions raised by fromiter.

This improves the testing of the edge cases.

Work done with @certik.
BUG: Remove xrange that slipped into test_numeric.py.
STY: Fix trailing whitespace and replace test doctrings by comments.
ENH: vectorize boolean comparisons of floats

the new code will more often propagate the invalid floating point
exception if comparing against nan, so allclose now ignores it (but
still returns False)