Cleanup the toggling of the unplaced units message
Fix merge conflict
Adding DB back in since it will be needed in future branches.
Merge pull request #324 from hatched/toggle-unplaced-cleanup

This is a small branch to clan up the toggling of the unplaced units message. See my comment on PR #300 for the original branch.

#### To QA
- Use il/mv.
- Open the machine view, the unplaced units message should be visible.
- Click the + and the subsequent x for the mass scale up UI and the message should hide/show appropriately.
- Switch to the service view and drag a charm onto the canvas.
- Switch back to the machine view, the message should be hidden.
- Toggle the mass scale up UI, the message should not appear.
- Drag the service to the new machine header and then click Deploy/Confirm - after a bit the unit token will disappear and the unplaced message should show up.
- Close/open the machine view and toggle the mass scale up UI, the message should show/hide appropriately.
Switching to EventTracker
Merge pull request #323 from makyo/deployer-bar-cleanup

Tests pass, deployer bar tests are now cleaner.

QA: ensure deployer bar shows change for 4 seconds, then removes it.
Container token creation tested.
Merge pull request #328 from jaycee/test-love-1-containers

There have been minor changes to machine-panel-view to make it easier to tests;
specifically, the duped code rendering container tokens in the regular and the
bare metal case has been broken out into its own method, which can be stubbed.

The test file, test_machine_view_panel.js, has been modified a lot.
* Tests have been reordered to put similar tests together, so it's easier to
  determine what has and has not been tested, and test like things via one
  describe block. e.g. all the drag/drop tests (including those about listening
  to events) are now part of a 'token drag and drop' describe block. I've noted
  inline where tests have just been moved without being altered.
* Many tests have been added for the machine panel view's rendering of
  containers.
Add tests for the machine view header labels.
Merge pull request #327 from huwshimi/header-count-tests

Added missing tests for header labels being updated with the correct machine/container/unit counts.
Unit tests for _smartUpdateList, used in updating machine column.
Unit tests for _renderMachineToken.
Merge pull request #330 from jaycee/test-love-2-machines

app/widgets/machine-panel-view.js 
* ```_smartUpdateList``` has been refactored, moving its two responsibilities--
  adding and removing tokens as necessary--into two methods. These methods are
  easier to test, and a bit clearer to read.

tests/test_machine_view_panel_view.js
* Unit tests for all inputs and all expected behavior of the components of
  _smartUpdateList have been added.
* Unit tests for _updateMachine and _renderMachineToken have been added

Note to reviewers: machine tokens are also tested in their own file, which has
not been updated. Additionally, invisible in the diff, but available in the
full file, machine column has quite extensive functional testing; I've only
added units to more directly tests private methods that were only implicitly
tested.