test-requirements.txt: add `sphinx` dependency

Technically, the tests do not require sphinx to run; this is only needed
for doc generation.

However, due to the way `py.test --doctest-modules` functions, _all_ .py
files are scraped for doctests, including doc/conf.py. There is no
option (that I could find anywhere) for excluding specific files. (Note:
--doctest-glob also doesn't help because it's meant to collect doctests
defined in text files. What we want is to collect doctests from code
docstrings.) Since --doctest-modules imports the modules it scrapes for
tests, any import directives at the head of a module will be run, and if
a dependency is missing, you get an error. This is roughly the error we
were getting:

-----ERROR collecting doc/conf.py-----
doc/conf.py:17: in <module>
>   from sphinx.ext import autodoc
E   ImportError: No module named sphinx.ext

This change fixes that.
tox: fixed duplicate collection of tests

The `--doctest-modules zpmlib` directives were false, and causing tests
to be collected and run twice.