Merge pull request #745 from Microsoft-CISL/weimer_exception_refactoring

Exception reactoring
Merge branch 'master' of https://github.com/Microsoft-CISL/REEF into weimer_newHeartbeatProtocol
Intermediate checkin
Small refactorings to EvaluatorManager

 * Introduced the new class `EvaluatorMessageDispatcher` that deals with all messages to the user code.
 * Added a new configuration option that sets the number of threads used in `EvaluatorMessageDispatcher`

Note that I changed the default number of threads to 4 from 16. Given that we instantiate one of these per Evaluator, 16 seemed a bit excessive
Merge pull request #746 from Microsoft-CISL/weimer_evaluator_refactoring

Small refactorings to EvaluatorManager
Merge remote-tracking branch 'origin/master' into weimer_newHeartbeatProtocol

Conflicts:
	reef-common/src/main/java/com/microsoft/reef/runtime/common/driver/evaluator/EvaluatorManager.java
Made EvaluatorManager compile again
More cleanups
Evaluator refactoring continues

Moved several aspects of the EvaluatorManager into their own classes:

  * Added EvaluatorControlHandler that relays evaluator control messages to the actually running Evaluator.
  * Added ContextControlHandler that does the same for context control messages.
  * Added EvaluatorStateManager to manage the state of an Evaluator as observed by the Driver

  This allowed EvaluatorContext to no longer require an EvaluatorManager instance.

  Also, this PR renames all handle methods in EvaluatorManager to more expresive names.
working version of runtests.ps1 script; minor fixes in runreef.ps1
set REEF_TEST_YARN in runtests.ps1 script
Merge pull request #747 from Microsoft-CISL/weimer_evaluatorManagerRefactorings

Evaluator refactoring continues

Tests pass on YARN
Merge pull request #748 from Microsoft-CISL/sergiym_runreef

add script to run unit tests on YARN + minor refactorings in powershell scripts
Merge remote-tracking branch 'origin/master' into weimer_newHeartbeatProtocol

Conflicts:
	reef-common/src/main/java/com/microsoft/reef/runtime/common/driver/context/EvaluatorContext.java
	reef-examples/doc.html
Merged with current master
"Refactored" the DriverManager

 * Removed DriverManager
 * Replaced it with individual event handlers
Minor tweaks
Moving code around into more sensical package names
Minor updates
Moving code around into more sensical package names