Removed boring comments

Also added Values field to ModifierKeys, since it's common to iterate
over the set of values (Alt, Ctrl, Shift)
Allow InputSnapshot nullable input

Not sure why this wasn't the default
Big cleanup of KeyboardManager

Interface is greatly simplified, so we can cut out a lot of the cruft.
I've also moved back to a strict-only check.

If I'm ever smart enough to figure out a good implementation of smart
checking (modifier fallback) then I'll use it.  Until then, there's no
need for such slow code.