Caret refactor - I need help with tests...

The refactor is done but the tests are commented out because arrow keys aren't firing..

Feel free to make comments etc.

I will try to get the rest of the tests written today.