Allow multiple levels of environment change sets

* Maintain an index within the environment change set.
* Only remove unplaced units when committing, not when clearing.
* Only show the current index of changes in the deployer bar