Added the request handler and search api endpoint to the charmstore apiv4 module
Added a request handler method inside the charmstore api class to handle success and failure dispatching
Transform and process the results from a charmstore search query into models for the rest of the app to work with
Charm details pane always makes a request to the old charmworld for charm details when loading
Convert all keys to lowercase in response json from charmstore api
Bundle and charm detail views now fetch from the old apiv3 while the search results are from apiv4. This branch introduces some regressions that are necessary to move this forward in a timely manner. They will be quickly followed-up on
Revert the charm and browser details view modifications and instead prevent the instantiators from passing in an entity
Fixed failing tests from moving search over
Added tests for the additional charmstore api functionality added in this branch
Merge pull request #671 from hatched/search-apiv4

Convert search queries to use APIv4

All search queries now use the charmstore APIv4 endpoints. Charm and bundle details now always query APIv3 when loading the details as a slight regression to allow us to move this forward incrementally. Because APIv4 no longer has bundle baskets I have attempted to build the old urls for the bundle details but unfortunately not all bundles have the necessary syntax so some will fail to load. This is an intermittent issue and will be fixed in the next follow-up
Split Logout and Get started buttons. Made user dropdown logout button work.
Updated tests.
Fixed lint.
Changes from review.