Simplify aspiration window loop

Don't open the window in case we find a mate score: this
will be takes care with next patch.

No functional change.
Center aspiration window on last returned score

bench: 4428212
Merge branch 'master' into aspiration
Increase earlier aspiration window size

bench: 4377851
Revert "Increase earlier aspiration window size"

This reverts commit b88bc7b7667fc6ddbfc7412fb2c0bfc13e3bf11c.
Merge branch 'master' into aspiration

bench: 4507288
Revert "Remove confusing optimization"

This reverts commit e05c80a08859f6c4f0f599ca0b262ced00ad66fe.

we gain a speed up of 1.5% under gcc !

No functional change.
Disable flto when debugging

Link-time optimization does not work well with
generation of debugging information:

http://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html

Reported by Louis Zulli

No functional change.
Simplify aspiration window code

Here the main difference is that now we center
aspiration window on last returned score. This allows
to simplify handling of mate scores.

We have done a reversed SPRT tests, where we wanted to
verify if master is stronger than this patch.

Long TC: master vs this patch (reverse test)
LLR: -2.95 (-2.94,2.94)
Total: 37992 W: 7012 L: 6920 D: 24060

bench: 4507288
Workaround github issue

Temporary revert aspiration window patch
so to be visible to everybody: it will be
re-applied with next patch

No functional change (together with next one)
Simplify aspiration window code

Here the main difference is that now we center
aspiration window on last returned score. This allows
to simplify handling of mate scores.

We have done a reversed SPRT tests, where we wanted to
verify if master is stronger than this patch.

Long TC: master vs this patch (reverse test)
LLR: -2.95 (-2.94,2.94)
Total: 37992 W: 7012 L: 6920 D: 24060

bench: 4507288
Skip node-level cut-off tests when in check

No functional change.
Merge remote-tracking branch 'source/master' into MajorOnPawn