Add unit testing, keyboard support for task