A objective collection is a objective that is achieved once all subobjectives are achieved...
An objective is a desired state of the system that is supposed to be created by the setup...
achieve(Environment $environment)
getPreconditions(Environment $environment)
An environment holds resources to be used in the setup process.
__construct(string $label, bool $is_notable, Objective ... $objectives)