Better arrow key movement, more unit tests, manual history/macro API