Fix stratosphere pom.

The compiler plugin was configured under the wrong section. It used to
be a child of reporting but is now a child of build. Changing the source
and target properties in the old pom were without any effect.
Changes in the TupleGenerator:

    - For Tuple Fields:
        - start with index 0
        - are public (no getters and setters anymore)
        - can be accessed via f0,f1, etc. instead of a method T1(), T2(), etc.
        - setFields() allows for setting all fields at once
    - For CsvReader, ProjectOperator, TupleTypeInfo:
        - TupleGenerator generates code for classes which depend on the tuple arity.
        - A special String indicates where to put Tuple dependent code
Added integration test for Filter operator.
Made internal methods protected to clean up user API
Added ReduceITCase for Java API reduce operator
Adjust names and messages for file write modes (NO_OVERWRITE and OVERWRITE)
Fixed NullPointerException in BulkIterationNode.mergeLists, fixed faulty chaining of root of termination criterion and root of step function, added static dynamic path detection for the termination criterion, fixed bug where the BulkIterationNode tries to generate alternative plans for the termination criterion even though there aren't any left for the step function
Extended scala api by introducing termination criterion
Added scala example for termination criterion
Added license header to example file
Fix issue #505 removing trailing \r from lines in Windows text files

Window uses \r\n to split lines. so, for text files from Windows, when
\n is used as delimiter, \r is still appear at the end of lines.

The code checks to see if \n is used as delimiter and end of a line is
\r, then \r is removed from the line
Fix stratosphere pom.

The compiler plugin was configured under the wrong section. It used to
be a child of reporting but is now a child of build. Changing the source
and target properties in the old pom were without any effect.
Changes in the TupleGenerator:

    - For Tuple Fields:
        - start with index 0
        - are public (no getters and setters anymore)
        - can be accessed via f0,f1, etc. instead of a method T1(), T2(), etc.
        - setFields() allows for setting all fields at once
    - For CsvReader, ProjectOperator, TupleTypeInfo:
        - TupleGenerator generates code for classes which depend on the tuple arity.
        - A special String indicates where to put Tuple dependent code
Added integration test for Filter operator.
Made internal methods protected to clean up user API
Added ReduceITCase for Java API reduce operator
Adjust names and messages for file write modes (NO_OVERWRITE and OVERWRITE)
Fixed NullPointerException in BulkIterationNode.mergeLists, fixed faulty chaining of root of termination criterion and root of step function, added static dynamic path detection for the termination criterion, fixed bug where the BulkIterationNode tries to generate alternative plans for the termination criterion even though there aren't any left for the step function
Extended scala api by introducing termination criterion
Added scala example for termination criterion