* Randomized first moves
* Cleaner validation