You should put your thought process into action and see what it produces. As you go you may realize different approaches to simplify things, and once it's working you'll have something more solid to look at and see about refining.
A bit zen - and not much help, especially for someone, such as I, with a Masters in Drawing (Fine arts) and no formal programming skills whatsoever. Producing a complex rendering of the human form = easy.
I think what the problem that I'm having is how to get the image array (which could have an infinate amout of images) and the tab array (which could have anywhere from 1-6 tabs depending on the job) to associate, then pass on said variables to dynamically loaded image (holder) MC.
To say that Tab 1 would cover images 1-4 all the time could possibly be easy to figure out. On the other hand, the need is more like:
Tab 1 is [i] through [n], then passing on the variable result so that first page value is set so the next button could also then compare the that page vs the next image in the linear sequence (ditto for the back button) then passing that on to the page count (dynamic text box) and loading in that page / image.
back to the drawing board.
Like I said, you have ideas and you should try them... nothing too zen about that. A degree does not define your limits or abilities... As an artist, you may have a more creative thought process than the average programmer. I have a few degrees, including one in Studio Art, but I still have to try things when I want to see if an untested idea will work.
The solution you seem to be describing sounds viable, so pursue it. It may be as simple as you thought it couldn't be. You just have to keep track of where you are in the linear sequence within a set. Variables are useful for for keeping track of things like that.