smart calculation of nfft in Trace.remove_response

in case large primes are encountered in nfft factorization (which makes
the computation take forever) we simply switch to using the next power
of 2, which is not the fastest possibility but has robust computation
time.
exclude obspy/lib/*.py from flake8 code check

closes #716
nfft: try to avoid going up to power of 2, try out some slightly larger
values before that
nfft: avoid problems with large primes in seisSim, too

changelog
nfft calculation: more tries to find good nfft number, computation time
of factorization is negligible compared to fft/evalresp/ifft

(e.g. for a trace with 1e7 points: factorization is <1ms but response
calculation is >1min)
fix previous commits
Merge remote-tracking branch 'megies/smart_nfft' into releases (see #715)
fix exclusion of obspy/lib in code formatting test

exclusion patterns with fnmatch are not customizable enough for the
intended check. regex would work but then we have to allow for different
dir separator on windows/unix in regex check..
fdsn: avoid hiding timeout errors from the user, raise all exceptions
(unless "debug=True"), see #717
fdsn: make it possible to specify timeout for Client (see #717)
BugFix Datamark/core.py:
* reading 0.5 datawide (4 bits) data format
* Reads the full channel number as 4 char hex: 0000 to ffff
corrected test issue (now that we read channel id correctly...)
PEP8 cleaning (I don't find it cleaner, but OK)
changelog for obspy.datamark
Merge pull request #721 from ThomasLecocq/fix_datamark

BugFix obspy.datamark
avoid nested for loops in list comprehensions
add a check for the station id to Network.get_response()
minor fixes for auto api docs
refactoring obspy.station.inventory.Inventory.get_response()
basic tests for Inventory.get_response() and Network.get_response()