remove the need for a global variable to count consumed characters while running :normal commands. this makes it easier to add visual mode as well
refactor key macros - they now reside in their own header