Add missing requires.
Add proper file header and a paragraph of commentary.

Additionally, clean up requires.
Eliminate the circular dependency between chess-pos and chess-fen.

We remove functions chess-pos-to-string and chess-pos-from-string which
are really just aliases for chess-fen-to-pos and chess-pos-to-fen.