Everything you said is a valid approach.
I thought I had noted this on one of the threads where I was working on this, but appears to be somewhere else. This was an exercise using css grids, and to play with a very very simple AU2 project and part of my continued learning experience.
Everything after this is just blabbing opinion stuff and can be ignored if desired.
Please understand everything that follows is in no way demeaning that idea, or suggesting that it shouldn’t be used. This is just my own philosophy at the moment till I get convinced that there is a better way of doing things.
As with all programming there are many ways to solve problems, and each has its own positive and negative aspects. Then there is the execution of that solution, which can be done using a simpler concept and perhaps (more likely to be) verbose code, we have super tight and condensed code using a more creative and ‘elegant’ concept that the lords of coding drool over, and of course everything in between.
I believe there are places for both, but in general I will 90% of the time take the simpler approach over the more complex. So for example, have you ever done this? Created a super cool application, with some very creative coding, and the walked away from it for a few weeks to come back and have to re-figure out what it was you did and why you did it that way? Now, how about 6 months? A year? What about low-level or intermediate coders that will maintain that code. Sure creating tests help, but in the end you spend a lot of time relearning how that creative coding technique works again.
I jump between .Net, Java, Web programming, and sometimes don’t get back to the ‘other’ environments for weeks. Hence, I lean toward highly readable code for all levels.
That other 10% (I would even venture to say its less then 1% of the time) for performance you need to use those creative, but complicated to grasp coding techniques.
I like Aurelia because the framework can do what it needs to do in order to be performant, but the application layer can be written very simply without a lot of framework clutter, or the application developer having to be a master coder to either create, or maintain theirs or others applications.
There are still some gotcha’s with Aurelia, but that is mostly (at least on my part) over complicating what Aurelia has simplified because we have all learned how to write said overly complex code.
After learning a few key Aurelia specific concepts (DI, lifecycles, binding, observables) the rest is mostly just wading through the javascript/css menagerie of tools that feels like it changes weekly. There is always the new kid on the block that shows how bad the old kid on the block (from last week) is now bad and obsolete and everyone jumps on board.
Okay, with that wall of text out of the way… 
I am going to look to see about setting up and using a single array. I have an idea on how I can maintain the readability, and ease of displaying and validating the cells, rows, cols. If I am successful, and do an update.
thank you @zewa666 @avrahamcool for your input, and I hope your future comments as well.