Remove tools.reader copy/paste mistake
Use goog.object/getKeys instead of js/Object.keys
Remove shift key from generated predicates
Add docstrings, reverse implementation of keyword<->keycode maps