Precisely determine Windows thread stack size (reland)

The Thread Information Block (TIB)'s StackLimit records the end of
the committed area of the thread's stack reservation, hence it cannot be
used to determine the overall size of the reserved stack. Switch to
a VirtualQuery() lookup instead, but taking care to cache the result per
thread so as to avoid calling overhead.

R=haraken
BUG=546396

Review URL: https://codereview.chromium.org/1409243011

Cr-Commit-Position: refs/heads/master@{#356521}
3 files changed