restructure flux to only contain a store and components