Remove tests from package but keep them in sdist

1c4727a adds the tests package to the installed packages. This means that when
you install the package you end up with a top level python package called
tests. This is not what we want; this commit fixes this error.

Closes: #139
Add fixtures data to sdist

Whilst the tests dir is included in the sdist package the
tests/functional/fixtures files are not. Fix that.

Closes: #140
Include extra information into sdist package

We should be able to run tests and see licenses etc from sdist.
feat: leaner requirements, improved tox/travis support

This patch reorganizes the requirements to install only what's
necessary for using httpretty. This greatly reduces installation time
when being pulled in as a dependency for another project.

The dependencies needed for running the test suite were moved to
test-requirements.txt, and were commented to indicate what type of
testing dependency it it.

Requirements are read in using a refactored variant of
test_requirements().

The tox file and the travis yaml have been updated to reflect the
changes in the requirements files.

Finally, .travis.yaml has leveled up. It now supports running the test
suite using pypy and python 3.3, with the added benefit that a build
will still be marked as successful even if py3.3 and pypy fail.