The hint problem.  If the hint is a promotion move easy mode
doesnt work right. It is currently bypassed in this case.
Search doesn't save the fact its a promotion move in the
PV. So hint and post only show the move without the piece
being promoted to. Cannot do easy mode off, because it must
know the piece being promoted to. Somehow should save it in PV.
Also true for hashtable entries. flags are not saved they should
be.

Make the hash table include castling flags + ep flag + promotion flags.
Currently only the transposition file include any of these and
then only castling for the side to move.

Things I want to add for pl75. (Kong Sian)
==========================================

Consider positions with insufficient mating material as terminal. 
This ought to speed up the endgame phase by quite a bit.  

Thinking on opponent's time.  This was fixed, but got lost in
the ensuing confusion.

Threat extensions. 

Remove -DHISTORY and -DKILLT and make them as standard.  They
are always good to have, so why make them an option?

Delay move generation until after null move is tried. 

Redo the pass pawn logic.  The current algorithm is lousy.

Separate the quiescent search from the full width search.  This will
simplify the code and allow us to do things with the quiesce which
is not possible now e.g. null-move in quiescence.

Instead of the messy K + KP perfect code in eval.c, how about using
a database.  This will allow us to extend gnuchess in the endgame
database direction.  

Bonus for rook behind passed pawn.

Development bonuses.

Remove the newer version of time control and use OLDTIME as the default. 

Remove flag.rcptr variable and make recapture extension standard.

Gnuchess has too many -D options (just look at the makefile).  I think
quite a few of them are outdated or unnecessary.  Perhaps some of these
could be removed.

Is util.c needed anymore?
 
Need to update Makefile.dos?  How?

Clean up the test directory. 
 
Start using bitmaps.
