I missed the false case test, I will add that.

With this new consolidated view the dispatcher clean up code can only destroy the whole thing or leave it alone. The charmbrowser dispatcher now calls the browsers `renderCharmBrowser` method which sets the current stateified data into the charmbrowser then renders it. If this method determines that that data has not changed in a way that's important to the charmbrowser view then it doesn't let it render.