In Progress: Speed up travis build for pull requests

The main change is moving the bash scripts that we were using inside `.travis.yml`. This allows me to
choose whether or not I want to setup Travis, using my existing `git diff` checks inside of `run-ci.py`. This should drop about 30 seconds off each travis job that is deemed unnecessary. While it doesn't sound like a lot, we are running over 100 jobs. When travis is busy, we are reduced to running them sequentially, so that's 30*100/60 = **50 extra minutes per pull request build**. 

This also provides substantial cleanup to the run-ci codebase