add alternate home/end keys, refactor