Refactor stores to be more flux like

- Stores hold their own state
- Stores can be directly subscribed to and observed
- Reactor => Dispatcher
- Dispatcher only responsible for dispatching actions to stores
and controlling when they notify their subscribers -- after entire
dispatch is done