Make the plain index scan more flexible and more robust.

Switching it to a class enables a subclass to override its behavior.

This now also properly supports index scans of plain Unicode features.