virtual MovementResult QueryMove(std::string & buffer);
virtual void Message(const char * message) {Program::SendMessage(message);}
virtual MovementResult QueryMove(std::string & buffer);
virtual void Message(const char * message) {Program::SendMessage(message);}