The March release improves strength by fixing bug, but also reworks time management:
- work around Arena bug by writing to stdout as little as possible
- always encode correct mate distance in evaluation, even when retrieving from transposition table
- this has the unfortunate side effect of causing more timeouts
- also some of the mates are so deep they don't seem plausible
- mate distance encoding: because mates beyond depth 100 are found, encode M1 as 199.99 instead of 299
- now no more illegal moves should ever get played
- fix bugs in is_pseudo_legal and add unit test
- also check transposition table moves for legality
- big fix: fix undefined behavior due to KILLER_TABLE being too small
- time use: use time based on move number (use less time in the opening and more in the middlegame)