add perft command
cleanup UCI code
- prefix UCI command handlers with "uci_" to avoid name collisions.
- use char ** instead of char *, to clarify in the calling code that line is modified (the pointer and the
data are both modified by my_strtok()).