Add drop states to the machine view headers.
Machine and Container tokens can now be marked as uncommitted.
Global units model list.
Merge pull request #290 from huwshimi/machine-view-uncommitted-state

This branch adds the ability to mark and unmark machine and container tokens as uncommitted.

I did a bit of style refactoring to remove the duplication between the two tokens.

This is not currently hooked up to anything, but is there for when we introduce the uncommitted state of these tokens.
Merge pull request #291 from huwshimi/header-drop-states

Adding in the drop states in the machine view headers. These states are not currently hooked up to anything, but are ready for when drag and drop is implemented.
Merge pull request #282 from frankban/unit-list

The db.units lazy model list includes all known units.
Also implement helper methods to add/remove units, and filter them by machine/container.

I was not able to properly live test this, but I am still proposing the code in order to unblock other branches.
For this reason please be very meticulous when QAing the branch: all the units-related GUI parts (showing units in the inspector, adding/removing them) should be tested for regressions, in both sandbox and real environments.

This does not include changes in the machine panel (wire service unit tokens etc.): the diff is already too long (my apologies). I changed my card description and created another one in "Ready to code" to reflect this.
Handle non-number hardware info.
Lint patrol.
Correct issues around hiding/showing details.

When hiding/showing charm and entity details, there are a host of polish
issues related to the state changes in the il flag. We lost the smooth
animation of the details panel sliding out. The panel contents weren't
being destroyed properly on close. Clicking between tabs would trigger
re-renders and mess up the hash in the URL. All of these issues are now
fixed in this branch.
Merge pull request #289 from kadams54/animate-cleanup

## QA

Show and hide entity details (from search/browse) and charm details (from the inspector) in both `il` flagged and unflagged states. Make sure that switching between details, opening and closing details, closing and then opening other details, etc. all work properly.
Merge pull request #294 from kadams54/hardware-info

## QA

Follow the steps to reproduce in https://bugs.launchpad.net/juju-gui/+bug/1317766 only instead of NaN strings, the UI simply doesn't display anything.
Tests.
Update css/html for service units.
Wire in service unit display.
Merge pull request #293 from jaycee/service-icons-on-tokens

QA:
Deploy a fairly big bundle, and wait awhile for it to create new machines
and containers.

Go to machine view--machine tokens should have a service unit icon.

Click around the machine tokens--some of them should have LXCs, and these
should be rendered as container tokens, with icons for their units.

All machines should show at least one container token for the "bare metal".

Known issues:
* This doesn't have a ton of tests--I welcome pointers on how to test some of 
  this, and request you let me land those tests as follow ups.
* The machine token only renders an icon for the first unit on it--it should
  update to also show the icons on containers as they're added, but we need to 
  fix the update cycle for that, and will do so in a follow up.