Issue 37: UI to upload tiles without deploying

Fixes #37:

This PR includes backend and front-end code that makes Tiles deployment safer, and adds another feature: the ability to add tiles to the Data Warehouse without deploying.

It is a stepping stone towards the incoming scheduling feature of tiles deployment.

The UI features include an additional step to deploy tiles: a checkbox needs to be checked before the data is deployed to Firefox users.

Fixes #40:  (This should've been a separate PR... sorry)

Another feature in this PR is the concept of Channels.
This allows for the deployment of Tiles to channels other than Desktop, e.g. Android.
Related to my question on line 17 about if the select values are objects or strings, if it's actually an object, should this be `{{ channelIndex[channelSelect.id].name }}` (note the added `.id`)