THRIFT-2718 Align cmdline help and return codes for Thrift test server/client
Client: Delphi
Patch: Jens Geyer
libgenerate extracted from thrift executable so compiler specific unit tests can be added
compiler: IndentKeeper extracted from t_generator

* tests added for IndentKeeper
* t_generator movd a little bit towards meeting SRP
* IndentKeeper can be reused by lower level generator
     (like MethodGenerator)
compiler: IndentGuard added

will simplify operating on indents
compiler: ScopeGuard added
compiler: C++ generator refactoring started - operator<< generation made more 'clean'
compiler: OutputGenerator added

wraps output stream and keeps indent and stream to indent in one place
compiler: some Makefiles split

more towards single library/target - single Makefile
compiler - cpp11: HeaderFileGenerator added
compiler - cpp11: EnumGenerator added
compiler - cpp11: FieldGenerator added
# This is a combination of 2 commits.
# The first commit's message is:

compiler - cpp11: IncludesScanner extracted from FieldsGenerator

moving toward SRP...

also - IncludesScanner should be reused in incoming TypedefGenerator

# This is the 2nd commit message:

compiler - cpp11: IncludesScanner almoust complete

only typedefs left as first issues with linking has to be resolved
compiler - cpp11: IncludesScanner extracted from FieldsGenerator
compiler - parse objects extracted to separate library
compiler - cpp11: IncludesGenerator extracted

FieldsGenerator getting lightier
compiler - cpp11: TypeGenerator extracted from FieldsGenerator
compiler - cpp11: FieldGenerator complete

for now
compiler - cpp11: typedef generation added
compiler - Makefile clean up

don't know why, but without it 'make check' was not resolving
dependencies properly. Now everything build in proper order
compiler - cpp11: OperatorEqGenerator added