The previous commit was merged somewhat prematurely, and fixed the
coverage on Travis by limiting `kcov` to a single process.
The previous commit also pins to a specific branch, which was not
necessary to fix this issue, but is a good idea anyway to prevent
bad commits on kcov's master branch from breaking PyO3's build.
* Use Travis-CI build matrix to setup environment
* Setup Travis cache
* Use `sccache` to cache compiled artifacts
* Use `setup.sh` script to setup Travis-CI
* Add more tests to `ci/travis` to lighten `.travis.yml`
* Use `script` deployment to run `kcov` in Travis-CI
* Export `RUSTC_WRAPPER` in the Travis configuration directly
* Fix wrong Python `3.7` version in Travis configuration
* Fix `ci/travis/cover.sh`
* Prevent Travis-CI from cleaning build artifacts
* Recompile `kcov` only when needed in Travis-CI
* Collect coverage in parallel
* Add github-pages deployment script