Shift the implementation of setThreadName out of the header
Summary:
`folly::setThreadName` is neither performance critical, nor (after this diff) is it a template, so exposing the mess that is its implementation to the world isn't worth it.
The implementation is expected to get even more messy as I add support for getting the current thread's name, and eventually also add support for Windows as well.
This also required exposing whether the current platform supports setting the name of the current or other threads.
Reviewed By: yfeldblum
Differential Revision:
D4942401
fbshipit-source-id:
0e3be203995fa6ed667a5fd28dac7ba7fa49d683