* Flatten the build_and_deploy_docker and build_and_deploy_website into one step. They don't appear to be dependent, and if the upstream "test" jobs ran okay, then we can run these jobs in parallel.
* Run the webide unit tests in the `test` stage only if there are changes to the tools/webide directory.
* Switch to using the new `rules` ([docs](https://docs.gitlab.com/ee/ci/yaml/#rules))property instead of `only` / `except`. `rules` is now the preferred way of setting job policies. `only`/`except` are [candidates for deprecation](https://docs.gitlab.com/ee/ci/yaml/#onlyexcept-basic).
* Build/push docker images only when CI is running on the canonical `ligolang/ligo` repo. Makes hacking on CI in forked repos easier.
* Don't push a `latest` tag for the webide.
When this is merged https://gitlab.com/ligolang/ligo-web-ide/ will be
marked as deprecated.
This MR does not hook up the webide build to the main CI. The CI
integration will come in a subsequent MR for the sake of making review
easier.