Totally misread the code in the Action_keys::act method -- the code actually reverse sends events in an up condition. Still, keeping the C++11 iteration and improving by using boost::adaptors::reverse.
This is closer to what I'm looking for, and gives us a style guide to boot.
Second part of the big refactor. Migrating all of the relevant method bodies to their respective translation units.