obspy-runtests: check on module basis if tests can be run

this commit adds a mechanism to check in obspy-runtests on a module
basis if all tests of the corresponding module can be executed or if all
tests of the corresponding module should be skipped.

this also implements this check for obspy.seishub, such that all tests
will immediately be skipped (even doctests) if the server is not
reachable.  until now, an unreachable server resulted in long timeout
wait time due to doctest executing all tests even after first failures
(this behavior can only be altered with doctest.FAIL_FAST starting with
Python 3.4, unfortunately)
seishub: use timeout in all requests
Ported #807 to releases branch.

This nables reading INFO request responses from the IRIS ringserver.
Changelog
Removed future imports for releases branch.
Don't accept non-keyword arguments.

Trace.spectrogram() does not accept non-keyword arguments.
Merge pull request #816 from bmorg/fix_spectrogram

Minor Stream.spectrogram doc fix
Merge pull request #811 from bmorg/fix_807_for_releases

Fix #807 for releases branch
Merge branch 'releases' into seishub_timeout

Conflicts:
	CHANGELOG.txt
Merge branch 'releases' into module_test_skip_checks
Merge pull request #786 from megies/seishub_timeout

Seishub timeout
Py 2.6 workaround
Merge pull request #785 from megies/module_test_skip_checks

Module test skip checks
docs: minor fix to API library index
fix travis version numbers (unshallow git clones, see 402a94e46040cd6a35d)
travis: correct fetching repo history