setup.py: re-organise dependencies

Try to make sure travis only installs what is required.