THRIFT-2089 Compiler ignores duplicate typenames
Patch: Randy Abernethy
THRIFT-2091 Unnecessary 'friend' declaration causes warning in TWinsockSingleton

Patch: Konrad Grochowski
THRIFT-2090: Go generator, fix including of other thrift files

Patch: Emir Habul
THRIFT-2090 Go generator, fix including of other thrift files

Patch: Emir Habul
THRIFT-2038 THRIFT_INVALID_SOCKET added to PlatformSocket.h
Patch: Konrad Grochowski
THRIFT-2094 TNonblocking server no longer works on windows
Patch: Konrad Grochowski
THRIFT-2093 added the ability to set compression level in C++ zlib transport
Patch: Randy Abernethy
(NO ISSUE NUMBER) Refactor for python binding support

Refactored global variables and functions into classes
that made adding python bindings around t_program and
t_generator/t_generator_factory easier.

Major changes:
- Build libthrift.a with -fPIC to support shared library
in python module
- Add t_program* to t_function ctor
- Move global types instances inside t_program
- Move logging functions to t_logging.[ch] and global instance
  t_log
- Move program-specific options inside t_program
- Pass program and parent_program instances to Flex functions
- Extract parse() and generate() functions from main.cc to
  helper.cc to avoid having main.cc included in python module
- Move saferealpath to t_util to avoid linker namespace pollution
  when dealing with python modules
- Add type_name() default methods to generator (bit of a hack)
- Make type_name() public in t_c_glib_generator