Use tests_require instead of install_requires

Previously some dependencies for unit testing were mixed with other dependencies in `install_requires` option.

Distribute (was setuptools) provides `tests_require` option to describe dependencies only for testing, so we’d better to utilize it.  More over it doesn’t require administrator permission even if you aren’t using virtualenv—it simply unpacks dependencies on working directory instead.

<http://pythonhosted.org/distribute/setuptools.html#new-and-changed-setup-keywords>