I would also like to know if there is a systematic way of categorizing 3x3 cube-states based on the position/orientation of pieces relative to the centers. Obviously cube-states can be categorized by their solution algorithms, and I am also aware that 3BLD methods use cycles of stickers/pieces (with an arbitrary buffer position) to capture the cube-state. I'm more interested in how a cube-state could be represented fundamentally. Like OP, I'm curious if there's a program which can store and arbitrarily alter cube-states as efficiently as possible.