Fixed drag and drop of unplaced units.
Charmbrowser view now cancels inflight store requests when it's destroyed
serviceDeployed event properly fired.
Remove need for header clients to pluralize.
Test added.
Lint passes
Add tests for the new transaction id's being returned and for the cancel in flight request method added to the charmworld api
Update machine headers on add/remove.
Merge pull request #348 from hatched/sticky-headers-1322255

https://bugs.launchpad.net/juju-gui/+bug/1322255

This adds a method to abort in flight requests from the charmworld api. So now when the charmbrowser view is destroyed it can abort any in flight requests so that it doesn't render after it's been destroyed.

#### To QA
Follow the steps in the bug to try and reproduce.
Everything else should continue to work as expected.

#### Note
Charmworld responded too fast for me to properly test this bug so I needed to throttle my network connection down manually.
Merge pull request #347 from makyo/ghost-to-service

On deploy, the ghost inspector switches to the service inspector if it's open.  QA with all flags.  With the mv flag, make sure to open a ghost inspector before committing changes.
Merge pull request #346 from kadams54/fix-mv-headers

### QA

1) With the `/:flags:/il/mv` active, switch to the machine view.
2) Deploy a bundle.
3) Ensure the machine column count is updated properly. Note that there's a known bug where the same machine will be rendered multiple times to the column, which has its own card. Nonetheless, the header should maintain the correct count.
4) Select a machine and make sure the container/unit header updates properly.

This branch fixes both the "Fix machine count…" and "Investigate using handlebars pluralize…" cards.
Destroy old inspectors when changing state.
Merge pull request #349 from makyo/duplicate-buttons

QA with il flag - deploy two services, then click each in turn.  There should be no lingering expose toggle from the previous inspector.
Driveby to remove sidebar flash
Implemented non-drag-and-drop unit placing workflow.
Merge branch 'fix-drop-unit' into fix-drop-unit-landing
Merge pull request #350 from makyo/driveby-flash

Quick driveby to remove the flash of charmbrowser introduced by the previous branch, just a matter of ordering.
Merge pull request #351 from huwshimi/fix-drop-unit-landing

Drag and drop of unplaced units was broken. This fixes it.

Bug: https://bugs.launchpad.net/juju-gui/+bug/1323199

QA:

drag a service to the canvas
open the machine view
drag the unplaced unit to 'create a machine'
open the javascript console and check there are no errors.
click deploy and confirm The unit should be on a new machine. Adding more units and dropping them on existing containers should work as well.
Merge pull request #341 from huwshimi/unit-placement-workflow

This is the click-through unit placement workflow.

Question: can we use constraints for creating machines/containers? If so I need to add that, if not I can remove that for now.

QA:
Use il and mv flags.
- Drag a service to the canvas. Click Deploy and Confim.
- Drag a different service to the canvas. Do not deploy.
- Open the machine view.
- In the "Unplaced units" column there should be one unit. Click the icon on the right hand side.
- A select box should appear and you should now be able to follow through with adding to a machine/container, creating new machines/containers etc. All the paths should work.