Organized client

- Divided client into classes.
- Added animation loop.
- Board is now conformed by cells, each cell has an associated tile and
content (monster).
- Made monster movement a monster's action. Each monster subclass should
extend the actions it may perform.
- Added 'line of sight' calculation to the monster's movement range.
- Found some cool sprites, author's info can be found on the README.