That is a good explanation of append. So in concat mode, the arrays would be treated as individual elements and thus united into a 1-d array, while in append mode the arrays are treated as part of the same array.
I think part of our confusion was that we would see Build Array seem to automatically adjust itself to whatever put into it -- and it would usually work without us having to change the mode. So if we did mixtures of arrays and constants, or arrays and arrays, Build Array just always came out correctly. We didn't really understand the mechanics, so this explanation will be a big help to us in understanding just what is going on.
Thank you to all for your great advice.