Get local charm icons from the Juju API.
Update page title to function

- Name was grabbing the wrong value from the event.
- Added a test that setting a name does change the title fixing ^
- The fake backend wasn't setting a name so it was defaulting to Environment
- Changed the name to have a class to follow suit on the provider type for
consistency.
Merge pull request #228 from frankban/local-icons

QA:

Check the local charm icons are correctly displayed
when using a real env.
- juju quickstart an environment;
- switch to this branch:
  `juju set juju-gui juju-gui-source="https://github.com/frankban/juju-gui.git local-icons"`
- wait for the GUI to be ready;
- deploy local charms including an icon:
  you should see the icons are correctly displayed in the
  service blocks and inspector header;
- deploy a local charm not including an icon:
  you should see a broken image: this will be fixed
  in a follow up branch;
- deploy a charm from the store: ensure the usual icon is
  still properly displayed both in the service block and
  inspector header;
- destroy the environment.

Ensure the fallback icon is used whe deploying local
charms in sandbox mode.
- `make devel`
- deploy local charms:
  you should see the fallback icons are correctly 
  displayed in the service blocks and inspector header;
- deploy a charm from the store: ensure the usual icon is
  still properly displayed both in the service block and
  inspector header.

Done, thank you!
Merge pull request #229 from mitechie/custom-title

- Name was grabbing the wrong value from the event.
- Added a test that setting a name does change the title fixing ^
- The fake backend wasn't setting a name so it was defaulting to Environment
- Changed the name to have a class to follow suit on the provider type for
consistency.

QA

- make devel and note that the title is now "Sandbox on demonstration"
- Deploy the gui to a live environment and set the branch
    
    juju switch local
    juju-quickstart 
    juju set juju-gui juju-gui-source="https://github.com/mitechie/juju-gui.git custom-title"

Note that the title will be the environment name on the provider.
Only open service inspector if ghost inspector has not been destroyed.
test added for multiple inspectors.
Now works with previously destroyed inspectors.

Pushing reset onto cleanups.
Added the dispatcher and save state controls to the state manager
Set version for release.
Set version back to unreleased.
Added tests for the dispatching functionality
Merge pull request #231 from hatched/state-controller

#### No QA
Test added for existing inspector being destroyed.
Merge pull request #227 from makyo/ecs-ghost-deploy

This ensures that inspectors for multiple ghost services (as will be possible under ECS conditions) will not flicker and randomize on commit.  To QA:

1. Run with the ecs flag
2. drag two or more services onto the canvas and click deploy once on each
3. On the last services, run `app.ecs.commit()` in the debugger
4. The inspector should simply change from ghost to service inspector without flickering between services and possibly ending up on a random service.

NB: this PR was co-opted from earlier work that hasn't passed design yet, revolving around the immediate option flag.  Such may come up later.
Added a new url generation method to create a valid url from the state object
Merge pull request #232 from hatched/state-change-url

#### No QA
API for retrieving/listing local charm files.
Created charmbrowser dispatcher method to support all of our urls. It does not yet support the view navigate
Added tests for charmbrowser dispatcher
Merge pull request #235 from hatched/charmbrowser-dispatcher

This branch now uses the new state object to render the charmbrowser urls.

#### Notes
This branch is blatantly missing tests for this new functionality.

#### To QA
Visit the following urls:
- /precise/apache2/:flags:/state/?text=apache2#related-charms ( should show the search results, charm details, and related-charms pane )
- /precise/apache2/:flags:/state/#related-charms ( should show the editorial results, charm details and the related-charms pane )
- /precise/apache2/:flags:/state/ ( should show the charm details )
- /:flags:/state/?text=apache2 ( should show the search results )