Refactor Directionable into an interface

Implement it in the `Human` class.
Hitpoints WIP
Merge branch 'hitpoints'