PredictionMode rewrite.

Dropped reliance on FlexibleHashMap in favor of C++ standard
containers.  May need to update the hash/comparison code elsewhere
later on.

Reformatted using clang-format (google style — up to any style as long
as we have one).