Made it so that button does not update its color more than it needs to. Started implementing text input caret
Fully implemented caret backspace and delete. Also radically simplified redraw logic in text input