Progress: SubState Capturing Complete

The code and test code for capturing a SubState from a given field is complete. It took a while and was overwhelming at first, but by writing out a rough algorithm and then focusing in on chunks at a time, I was able to come up with a solution.

Some changes were put in while coding it. For starters, a gap of size 3 will cause a new SubState as a gap of 3 is pointless to all Tetrominoes but the I-piece. And the I-piece can usually fit in a chasm.
Also, a state no longer breaks if it stretches out vertically too much. this may be a mistake, but can always be fixed later. For instance, a state of {2,2,2} can exist.

That’s all. By making these changes, I have brought about many test failures on other methods, due to the nulls in the SubStates no doubt. These will need to be examined and remedied before moving on to the next improvement.