I see, well, your initial state could be whatever it needs to be. Since you're heading towards something "scalable", I'd recommend creating one or more state creation functions. The function can simply return an object that represents the initial state required. It could even be made to accept configuration to control some of the properties of the returned state. This can be called in any files that use the initial state, e.g. for setting as the default value of a reducer first argument (state).
Does that get you any closer?
Aaron Cooper
UK Software Engineer in Singapore
Not entirely sure what you mean by "sanitize", however in terms of your described data types it sounds like each of those would be well suited to having their own tree of Redux state, meaning each should have their own Reducer function and actions/action creators. Then when your app creates its store, it can take in each of those reducers to create a single store containing each of those trees of state.
I can also highly recommend looking into selectors to make pulling out specific pieces of state very easy. There's also a library called reselect that allows you to create advanced selectors with whatever mapping/filtering logic you need to get calculated data anywhere it's required.
Hope that's of some help!