Removed code deprecated in 0.3
This removes most APIs deprecated in 0.3 and removes their use:
 * Removed `Failure.getCause()` and replaced all its uses
 * Removed `JobMessageObserver.onError()` and replaced its use with thrown exceptions.
 * Removed a deprecated constructor in `FailedJob` and subsequently removed `JobException`, which is no longer used.

Also, this fixes a small issue where we imported a deprecated `Assert` class from JUnit.
 * Imported the right `Assert` from junit
Added reef-utils-hadoop

This adds a new sub-module to REEF for Hadoop/HDFS related utilities.
*Rationale:* Not all REEF applications depend on Hadoop and HDFS. Hence, adding these utilities to `reef-common` is impractical.

This also adds a first useful utility to this new project:
 * Added DFSHandler, a logging handler that writes straight to DFS
Merge branch 'master' of https://github.com/Microsoft-CISL/REEF into weimer_deprecations

Conflicts:
	reef-common/src/main/java/com/microsoft/reef/runtime/common/client/RunningJobImpl.java
Merge pull request #770 from Microsoft-CISL/weimer_deprecations

Removed code deprecated in 0.3
Merge pull request #776 from Microsoft-CISL/weimer_775

Added reef-utils-hadoop
Merge branch 'master' of https://github.com/Microsoft-CISL/REEF into weimer_774