setup.py: re-organise dependencies

Try to make sure travis only installs what is required.
travis: run nose via setup.py
Merge pull request #2 from rjw57/prune-depends

setup.py: re-organise dependencies