New oddity I'm dealing with now... how is it possible for a pb_Object's faces to become null even though the object visibly has all of it's faces (cube)? I'm not removing/deleting faces.
for (int jFace = 0; jFace < _ourPBCube.faces.Length; jFace++)
{
if (_ourPBCube.faces[jFace]==null)
{
Debug.LogWarning("EGADS!!!");
}
}

Turns out, due to unknown sorcery, that the first 6 values in msh.triangles were being removed. So then I manually replaced them and the face reappeared, but was removed again any time I changed anything in the geometry. So I just manually made a new face and appended it to the mesh and set it's vertices to be the same as the missing face. This fix stuck, so that's that I guess.

Well of course because people love changing things, the whole input style has changed. The want to be able to just place nodes and have the "corridors" just connect the nodes. Which is fine, but it also means a lot of how I was doing things has changed. Have you ever had a face just disappear after an extrusion? In this case, not even the face I had extruded.

One more thing. When using AppendFace() is there a way to make the face physically stay where it was before appending. It seems to always go to the origin of the pbo that I attach it to. I then have to move the vertices manually with offsets depending where I intended to attach it. Which was fine until I realized that if the pbo is rotated at all it throws everything out of whack.