Handle test warnings

Addresses #1182.  Adds a `test_setup` function in `skimage._shared.testing` to set up the test environment which is called from each test folder in its `__init__.py`.  Uses the `skimage._shared.utils.all_warnings` context manager for known warnings, with comments about what is being suppressed.
Warnings are not elevated for the minimum Travis build (2.7), as it was kicking out over 40 warnings that were purely due to older versions of `numpy` and `scipy`, and addressing them would have added a lot of noise and skipped doc tests.  We check for this by looking for `TRAVIS_PYTHON_VERSION == 2.7`, to ensure we can still elevate warnings on local Py2.7 builds.
This seems like a dodgy change...? The `except IOError` will never get called so you might as well delete all of this!