* Added more tests for Direction.
* Refactor.
* Refactor tests.
* Refactor tests.