Simplify match tracking.

The previous approach was more memory-efficient in some situations, but introduced some complexity and make the code bug-prone. This simplification will also facilitate further improvement of the unbound jumps feature.