delete working; fix append set caret pos
cleanup naming; convert backspace loop to sub strings