Cache line aligned TT

Let TT clusters (16*4=64 bytes) to hold on a singe cache line.
This avoids the need for the double prefetch.

Original patches by Lucas and Jean-Francois that has also tested
on his AMD FX:

BIG HASHTABLE

./stockfish bench 1024 1 18 > /dev/null

Before:
1437642 nps
1426519 nps
1438493 nps

After:
1474482 nps
1476375 nps
1475877 nps

SMALL HASHTABLE

./stockfish bench 128 1 18 > /dev/null

Before:
1435207 nps
1435586 nps
1433741 nps

After:
1479143 nps
1471042 nps
1472286 nps

No functional change.
Fix a 'value > VALUE_INFINITE' assert

This fixes an assert while testing with debug on.

Assert was due to static null pruning returning value

eval - futility_margin(depth, (ss-1)->futilityMoveCount)

That was sometimes higher than VALUE_INFINITE triggering
an assert at the caller site.

Because eval con be equal to ttValue and anyhow is read from
TT that can be corrupted in SMP case, we need to sanity
check it before to use.

bench: 4176431
Temporary revert "Expose EvalInfo struct to search"

It is not needed for the release and introduces
a slowdown, although very small.

Probably it will be readded after the release.

No functional change.
Revert "Cache line aligned TT"

This reverts commit 083fe5812485597e13943b690cc24a8f25c0d140

It seems to break Android build

No functional change.
Stockfish 3

Stockfish bench signature is: 4176431
Restore development version

No functional change.
Merge remote-tracking branch 'upstream/master' into bishop_pin
Tweak bishop pin/xray weights