THRIFT-2687 - C++ Qt lib - fixed struct/class inconsitency between forward decl and definition

Signed-off-by: Roger Meier <roger@apache.org>
THRIFT-2680 c_glib: ThriftFramedTransport fails when peer unexpectedly closes connection

Patch: Simon South
THRIFT-2683 c_glib: Seg fault when deserializing a map with typedef'd keys

Patch: Simon South
THRIFT-2684 c_glib: Improvements to map deserialization in generated code

Patch: Simon South
THRIFT-2685 c_glib: Include in integration test suite

- client side

Patch: Simon South
THRIFT-2677 haskell library and tutorial: build with network > 2.5
THRIFT-2673 PHP: generated Service_method_result code should not have validators

Patch: Stig Bakken
THRIFT-2686 Another extraneous semicolon - TBinaryProtocol.h

Client: cocoa
Patch: Mark Frawley
THRIFT-2676 Avoid 'i386' name collision in generated Cocoa/objc code

This fixes a bug in the cocoa code generator where the variable
used by a for-loop can conflict with a built-in symbol when the
temporary variable counter is equal to 386. The generated variable
name, 'i386', conflicts with a macro built-in to the compiler.

I can reproduce this bug on Xcode 5 as well as Xcode 6. It appears
to only affect iOS projects, not OS X projects.

My fix simply prefixes the generated variable with 'idx' instead of 'i'.

This test code demonstrates the problem, regardless of Thrift codegen.

    int i386 = 42;
    printf("foobar %d\n", i386);

Which results in the following compiler error:

/Users/keith/Desktop/ReservedSymbolTest/ReservedSymbolTest/ViewController.m:22:7: error: expected identifier or '('
  int i386 = 99;
      ^
<built-in>:143:14: note: expanded from here
             ^
1 error generated.
THRIFT-2666 Usage of PYTHONHASHSEED breaks older Python code
Client: Python
Patch: Jens Geyer
THRIFT-2067 C++: all generated objects provide ostream operator<<
THRIFT-1266 generated C code for iterating over nested maps is wrong

Patch: Simon South
THRIFT-2690
c_glib: Incorrect behaviour when serializing a map with typedef'd keys

Patch: Simon South
THRIFT-2679 golang generation fails for service names less than 5 characters
Client: Go
Patch: Dustin Spicuzza & Jens Geyer
THRIFT-2513 clean up enum value assignment
Patch: Dave Watson

This closes #88

Summary:
Clean up how enum values are handled if an integer value is not
explicitly specified in the thrift file.

For example, the following used to be a compile error, but
works now:

  enum MyEnum {
	SOMEVALUE
  }
  struct MyStruct {
	1: MyEnum e = SOMEVALUE
  }

This change also cleans up some of the error handling with out-of-range
values.  Previously thrift simply issued a warning for enum values that
didn't fit in an i32, but serialized them as i32 anyway.  Now
out-of-range enum values result in a compile failure.

Test Plan:
Included a new unit test to verify the assignment of enum values.  I
also verified that g++ makes the same enum value assignments when
compiling these enums as C++ code.
updated ignores
FIX: wrong include path
Fix EnumTest (part 2)
Patch: Konrad Grochowski, as part of his pull request 209
THRIFT-2694 Minor glitches in Delphi cross-test code
Client: Delphi
Patch: Jens Geyer
THRIFT-2691 - C++ tutorial: printfs removed, generated operator<< used