Clarify when forcing the moves loop

In some cases we want to go direcly to the moves loop
without checking for early return. The patch make this
logic more clear and consistent.

Tested for no regression, passed STC
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 25282 W: 5136 L: 5022 D: 15124

and LTC
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 72007 W: 12133 L: 12095 D: 47779

bench: 9316798
Assorted nitpicking code-style

No functional change.
Retire 'os' flag from Makefile

Appears to be unused

No functional change

Resolves #147
Fix profile build for syzygy

Touch source files under syzygy directory to force recompilation
after collecting profile data.

No functional change

Resolves #149
MSVC compiling fixes

No functional change.

Resolves #150
Halve StormDanger bonus for blocked pawn on A/H file

STC
LLR: 2.95 (-2.94,2.94) [-1.50,4.50]
Total: 3410 W: 758 L: 641 D: 2011

LTC
LLR: 2.95 (-2.94,2.94) [0.00,6.00]
Total: 33225 W: 5708 L: 5445 D: 22072

Bench: 8465811

Resolves #153
Only use _ReadWriteBarrier on MSVC

It was causing compile errors when cross-compiling using mingw.

No functional change.
Avoid searching TT twice for the same key/position during probe() and store().

Just keep the pointer and remove code from tt.cpp

STC
LLR: 2.96 (-2.94,2.94) [-1.50,4.50]
Total: 13620 W: 2810 L: 2665 D: 8145

LTC
LLR: 2.97 (-2.94,2.94) [0.00,6.00]
Total: 13021 W: 2238 L: 2073 D: 8710STC http://tests.stockfishchess.org/tests/view/548436860ebc59331739b90c

STC 4MB
ELO: 2.41 +-2.2 (95%) LOS: 98.6%
Total: 40000 W: 8175 L: 7897 D: 23928

LTC 16MB
ELO: 1.78 +-2.0 (95%) LOS: 96.1%
Total: 39683 W: 6763 L: 6560 D: 26360

Resolves #151

Bench: 8116521
Fix compile for some versions of mingw

The bswap intrinsics are specific to the compiler, not the
host platform.

No functional change.

Resolves #155
Coding style in TT code

In particular seems more natural to return
bool and TTEntry on the same line, actually
we should pass and return them as a pair,
but due to limitations of C++ and not wanting
to use std::pair this can be an acceptable
compromise.

No functional change.

Resolves #157
Improve comments in UCI

And simplify naming while there.

No functional change.

Resolves #159
Basic Fourtress Support

Bench: 8255966
Ensure that gapped fourtresses are not evaluated as full fourtresses

Bench: 8255966
Add bishop support
Limit blockades to positions where the pieces are behind the lines
Improve Speed and Increase Range:

Fixed: 4B3/3p2r1/2p1p2r/1p1P1pkb/pPP1P1p1/P4P1p/3K1BPP/8 w - - 0 1

No change in bench
Reconform formatting
Add basic support for filled hole

Example: 2k5/8/1p1p4/pPpPp3/P1P1Pp1p/5PbP/K2Q4/8 b - - 0 6
Just return draw instead of drawish value
Improve bishop eval