Sourcing files that set flags bleed into Travis' wrapper script, which
messes with their workflow, e.g. preventing after_failure scripts from
triggering.
These changes fix that:
* Move exported variables from install.sh to setup.sh, so install.sh
doesn't have to be sourced.
* Source setup.sh from run.sh, rather than directly from .travis.yml.
In addition, as a good practice, remove `set -e` etc. from setup.sh,
and add a comment not to add them back. It's the sourcing script's
responsibility to set these flags.