Move posix_logger out of core code.
Use correct macro to detect MSVC.
Move struct outside of function.

This fixes a number of Visual C++ compiler errors.
Use alloca for Visual C++.

MSVC doesn't support C99 variable-length arrays.
Remove unnecessary platform-specific include.
Delete duplicate kInlineSize constant.

MSVC thinks Arena::kInlineSize has multiple definitions if defined in the header.