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.
Merge pull request #3500 from charris/fix-3592

Fix exceptions being swallowed by fromiter.