Refactor ancient AssignEvaluator.h to get rid of enums and other legacy patterns. No functional changes.