TODO
====

 - Improve error handling (use exceptions more)
 - Correct game save/load functions: Advanced format
   file saving for freegames and duplicate need a serious
   rewrite. We need to specify a file format that can handle
   all the information contained in a multiplayer game.
 - getopt support for all the interfaces (only ncurses is done)?
 - detection of blocked positions?
 - distinguish misplaced and incorrect words?

Requested by users
==================

 - Save/load games (03/02/09)
 - Drag & drop? (03/02/09)
 - Continue a real game on Eliot (03/02/09)
 - In duplicate mode, display the rack in the External board (19/02/09)

Implementation details
======================

 - game.h included in board.cpp!
 - board.h included in coord.cpp!
 - use Boost.Format?
 - compile with -ansi -pedantic by default?

Not so urgent
=============

 - add timers
 - network support
 - implement the dictionary as a GADDAG:
   http://www.cs.ubc.ca/local/reading/proceedings/spe91-95/spe/vol24/issue2/spe880.pdf

