Added caret, tested and cleaned.

The caret is only monitoring caret moved when it is in terminal for some reason. Caret needs work.