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.
Temporarily remove caching ability until widget rendering issue is cleared up.
Updated comment to reference skipped test.
Improve machine creation and unit placement.
Lint error.
Merge pull request #363 from frankban/ghost-machine

Implement an db.machines.addGhost method, used
to create new ghost machines/containers.

Ghost machine creation is then handled by
machine view panel code: when a new machine must be
created the view now is responsible for adding the
new model instance and for executing the corresponding
env/ecs call.

Some docstring drive-by fixes.

QA:
- make devel;
- use the mv flag;
- disable the simulator;
- drag a service and then switch to machine view;
- drag the unplaced unit token on the "Create Machine" header;
- you should see a new0 ghost machine in the machines column;
- click deploy and confirm;
- now you should see a machine 0 in the machines column. 
  Note that the sometimes unit seems not to be there, but it's 
  displayed in "Bare metal" if you click the machine token.
  Switching to service view and back to the machine view seems
  to fix this issue, which fix is outside of this branch scope.
- done, thank you!
Removing cache
Move service-destroy HTML into the footer.
Merge pull request #364 from makyo/hide-cache

This hides caching ability until the UI lockup involved in rendering the charm token widgets is cleared up.  QA to ensure that search, interesting, and inspectors transition as expected.
Merge pull request #365 from kadams54/inspector-footer

This ticket moves the link into the footer for the service inspector. This change is consistent with the ghost inspector, which already has the same link in the footer.

### QA

1. Drag a charm to the canvas and deploy it.
2. Drag a second charm to the canvas, but don't deploy it.
3. Click on the deployed service and verify that the "Destroy Service" link is anchored to the bottom of the inspector (expand some of the unit info so that you activate scrolling).
4. Click on the ghost service and verify that the location and appearance of this link is consistent between the two different types of inspectors.
5. Verify that the link and icon work as expected in both types of inspectors.