Symmetric evaluation

* symmetrize king safety.
* symmetrize ad hoc eval terms: hanging + R and Q contact check.
* move Tempo outside eval and into the search, in order to have a fully symmetric eval.
* deduce eval from parent node after null search, to avoid unnecessary evaluate() calls: verified bench unchanged by this (ie. non functional speedup).

bench 7649396.