Deployer

Adds a deployer component, which uses the queue (#547) to schedule deployments using different strategies (currently one-by-one or all-at-once).

Resolves #602.
This is so we ensure that the strategy satisfies the interface?