add test Jetty Handler test cases
Support for assertions and singleton checks

This pull request adds two features to REEF:

**(1) Support for assertions**

We now propagate the assertion state (enabled / disabled) from one JVM to another.

 * Used it in `JavaLaunchCommandBuilder` to propagate the assertions to subprocesses. Also added code there to allow users to override this automatism.
 * Added `EnvironmentUtils.areAssertionsEnabled()`
 * Added a log statement to `Launcher` about the assertion state

**(2) Support for singleton checks**
 * Added the helper class `SingletonAsserter` that allows checking for the singleton property of a class. Also added a test for it
 * Added an assert to make sure Evaluators is a singleton
minor refactoring of the assertion logic
cosmetic fixes to the code in REEF Launcher
Merge pull request #831 from Microsoft-CISL/sergiym_launcher_refactor

cosmetic fixes to the code in REEF Launcher
Merge branch 'master' of https://github.com/Microsoft-CISL/REEF into juwang-httpAvroSerilazer
Merge branch 'juwang-httpAvroSerilazer' of https://github.com/Microsoft-CISL/REEF into juwang-TestJettyHandler
reef webserver reformat
rename a variable
add TestHttpServer
POM fixes
  * Removed a duplicate dependency on the jcip annotations
Merge pull request #832 from Microsoft-CISL/weimer_pom_fix

POM fixes
Add tests for reef-webserver

Add tests for HttpServer, HttpConfiguration, ReefEventStateManager
Merge branch 'master' into juwang-httpAvroSerilazer
Merge branch 'juwang-httpAvroSerilazer' into juwang-TestJettyHandler
add newline at the end of the avro/webRequest.avsc file
fix httpServerPortRetryTest
test case update as port is not always ensured
httpServerPortRetryTest update
HttpServerupdate with the merged code from master