Simplify Pojo/Tuple/CaseClass comparator extractKeys() method

Also fixes a bug with Java/Scala interop: TupleTypeComparator was only checking
for nested Java Tuples and Pojos, not Scala Case classes.
[scala] Add missing operator IT Cases
[YARN] Fix issue with port-offsetting.
[doc] Fix javadoc building.

The java8 Xdoclint:none fix was not correctly transferred when moving
the javadoc building to a jekyll plugin.
[doc] Update programming guide for scala expression keys
Fix bug in Blob Manager, Cleanup Timer was not cancelled on Shutdown                                          -
Remove Guava dependecy from streaming-connectors (void shading otherwise)
Enable forgotten JoinITCase (for POJOs) for Scala and Java API
Set the cleanup timer thread of the BlobLibraryCacheManager to be a daemon.
Fix class loader when extracting lambdas
Fix various deprecation warnings in tests
[FLINK-1143] Allow delta iterations that do not join with the solution set
[FLINK-1148] Create a writeAsCsv(path, writemode) variant
[FLINK-1152] More robust resource release when tasks are canceled during deployment
Better test error messages when canceling tests fail
JoinHints are passed to the optimizer
Optimizer evaluates join hints from high level apis.
Fix incorrect scheduler test that sometimes produces a deadlock
[scala] Change input of grouped ops from TraversableOnce to Iterator

Iterator is a subclass of TraversableOnce, so it doesn't break existing
code. We can have an Iterator anyways and it provides more functions for
the user.
[streaming] CoGroupedWindowReduceInvokable refactor

[streaming] Grouped window reduce bugfix