Added a container token widget and navigation to view containers.
Make machine view columns scrollable.
Merge pull request #233 from huwshimi/container-token

This branch adds the container token as well as the ability to click on machines and list their containers.

Comments inline.
Fixed issue where search coudln't be completed twice in the charmbrowser
Merge pull request #245 from hatched/fix-search-twice

#### To QA
Use the `state` flag.
- Perform a search in the charmbrowser search, the results should appear in the list.
- Perform another search, the url should update and new results should appear in the list.
Merge pull request #243 from huwshimi/machine-panel-scrolling

This branch makes each column in the machine view panel scrollable. I could not actually find any designs for how scrolling should work, but this seems to make sense with the navigation/interactions we have.

To test use the 'mv' flag, add a service to the environment, open the machine view panel, wait for machines to fill the column or resize your browser until there is not enough vertical room to fit the machine tokens.
Implement basics for ServiceUnit token/view.
Update new flags to return to li and mv

- Move the deployer bar to the mv flag.
Minor code fixes, per Rick.
Merge pull request #247 from mitechie/update-feature-flags

- Move the deployer bar to the mv flag.
Fix clearing url hash on details close.

- Update the entity-base to pass a null hash in the metadata during the change
event.
- Add tests to both the bundle and charm details that the hash is cleared.

QA
---

Make sure to use the :flags:/il for all QA steps.

 - open a charm details view, go to the readme tab. Verify the url has
   #readme. Close the details and the url should not have any hash any longer.
 - Repeat the process, make sure that you can copy and paste that url with the
   hash into a new browser tab. Then close the details, and the hash goes away.
 - Do the same for bundles.
Fix env header buttons to function.

- Requires the il flag
- Fires correct event updates to show/hide the machine view UI
- Adds a test for the correct events.
- Update to make sure the header is drawn in the new state world.
- Update the CSS to move the machine view panel next to the sidebar.

QA
----

Load the GUI with :flags:/il/mv and click back/forth on the buttons in the
control for Service/Machine views.
Merge pull request #239 from kadams54/deployed-unit-tokens

Right now primarily a code review as this isn't wired into anything yet.
Merge pull request #249 from mitechie/machine-view-control

- Requires the il flag
- Fires correct event updates to show/hide the machine view UI
- Adds a test for the correct events.
- Update to make sure the header is drawn in the new state world.
- Update the CSS to move the machine view panel next to the sidebar.

QA
----

Load the GUI with :flags:/il/mv and click back/forth on the buttons in the
control for Service/Machine views.
Merge pull request #248 from mitechie/closing-details-hash

- Update the entity-base to pass a null hash in the metadata during the change
event.
- Add tests to both the bundle and charm details that the hash is cleared.

QA
---

Make sure to use the :flags:/il for all QA steps.

 - open a charm details view, go to the readme tab. Verify the url has
   #readme. Close the details and the url should not have any hash any longer.
 - Repeat the process, make sure that you can copy and paste that url with the
   hash into a new browser tab. Then close the details, and the hash goes away.
 - Do the same for bundles.
Service inspector closes without flags.
Merge pull request #250 from jaycee/fix-broken-inspector-close

This resolves a simple bug wherein the service inspector (absent flags) would not close after deploying a service; this was simply because the original call to .destroy was no longer made, even without the state flag.

I've not bothered adding tests, as this code will only live for a short while (e.g. the end of this week). In the meantime, we would like comingsoon to still work.

QA
This branch must be QAed against the state flag and without flags. In both cases, after deploying a service, you should be able to close that service's inspector using the close button.
Support tags and root-disk constraints.
Merge pull request #246 from frankban/tags-constraint

Add support for setting/retrieving the missing
constraints: "tags" and "root-disk".

Fix a bug preventing constraints to be removed
in sandbox mode.
Also improve the constraints validation
performed before sending the API requests.

Note that currently bug 1309449 [1] prevents
tags to be removed when using a real juju-core
environment.

QA:
QA must be done in sandbox mode and real env [2].
It involves deploying charms, setting constraints
(including the new ones), changing and removing
them, to see if the backend reacts correctly.
When setting tags, ensure they are normalized (
e.g.: "foo bar, spam," is turned into "foo-bar,spam").
Also, please make sure that constraints are
preserved when exporting/importing bundles, whether
they are set or missing/removed.


[1] https://bugs.launchpad.net/juju-core/+bug/1309449
[2] E.g. by using juju-quickstart to deploy the GUI,
    then running `juju set juju-gui juju-gui-source="https://github.com/frankban/juju-gui.git tags-constraint"` and then waiting for the GUI
    to be ready.
Update charm release instructions.