abstract thread_local support
Summary:
change from using __thread to using FOLLY_THREAD_LOCAL macro, this will allow abstraction over gcc and msvc implementations of thread local (__thread and __declspec(thread)) which have the same semantices and will also allow drop in replacement of thread_local when compiler support for the feature is complete This doesn't do anything about apple, however, which still has broken __thread support
This doesn't actually change any implementation for now, simply allows for correct compilation
Test Plan: fbmake runtests
Reviewed By: delong.j@fb.com
FB internal diff:
D1278726