[FLINK-1005] Extend TypeSerializer interface to handle non-mutable object deserialization more efficiently.
[FLINK-1005] Add non-object reusing variants of key-grouped iterator.

Clean minor javadoc errors.
[FLINK-1005] Make GroupReduce configurable to use either mutable or immutable object mode
RAT plugin not inhertited, to prevent redundant checks.
[FLINK-1072] improved build matrix
add shading for guava
Major depedendency cleanups
  - add "flink-shading" for shaded libraries (currently guava only)
  - relocate guava in all projects and exclude it from the lib and exported dependencies
  - Exlude unnecessary transitive dependencies from hadoop 1
Deactivate shade plugin for quickstart projects
[FLINK-1117] Clean up flink-avro project: remove deprecated AvroRecord format, migrate tests to new java api.
- Allow dependencies to retain guava
- Clean dependencies in flink-streaming connectors
[FLINK-1118] Exclude log (and crash) files from rat checks.
[streaming] Added CoBatchReduceInvokable, CoWindowReduceInvokable, CoGroupedBatchReduceInvokable, CoGroupedWindowReduceInvokable
[streaming] Reduce and GroupReduce invokable refactor and performance tweak
[streaming] ConnectedDataStream API  and operator cleanup + modified windowReduceGroup functionality
[streaming] Improved tests for CoReduceInvokables