All interfaces and engines must meet the following requirements:
All command strings end in '\n'.
Processing will be done through standard input and output handles and components must always be able to process input.
The interface is in control of the opening book unless the "OwnBook" option is turned on.
The engine must never exit if it recieves a version higher than what it knows. Future versions of this protocol will be backwards compatable.
All moves are sent and processed in "long algebraic notation". The board is labeled from left to right with a-i and from bottom to top with 0-9 from red's perspective. Moves are sent with the origin followed by destination as one 4 character word.
Examples: h0g2, e0e1, h2e2