Figure out a better CI pipeline for various scenarios.

Scenarios


Pull request to develop

The most basic CI branch that should be a good trade-off between speed and coverage. It should check:

Pull request to master

It should check:

A release candidate

It should check:

Periodic job

We also should have a periodic job in Travis which will be constantly checking (e.g. every 1 hour) that our master branch is healthy. It should check: