Track the committed state on tokens.

Fixed container references.
Remove the unplaced unit when it has been placed.
Merge pull request #359 from huwshimi/track-token-state

As part of some broader work to have the machine view correctly show the state for the tokens this branch tracks and sets the committed state of the machine/container tokens.

QA: There are no visual/functionality changes in this branch.
Merge pull request #360 from huwshimi/remove-placed-token

This branch removes the unplaced unit token once it has been placed. A followup branch will create the new token once placeUnit has been fixed.

I had to fix up a bunch of tests so that the removal worked in those tests.

QA:
- Drag a service to the canvas.
- Open the machine view.
- Drag and drop the unplaced unit on 'Create new machine'.
- The unplaced unit token should disappear.