Fixes regression in GWTTestCase servlet handling

While we updated Jetty, instead of manually loading servlet with
WebAppContext.loadClass,  we started using WebAppContext.addServlet
directly which loads the class internally.
Unfortunately, due to a bug in Jetty 8, calling addServlet with a
class that doesn't exist, leaves Jetty in a broken state causing
any proceeding calls to addServlet fail.

This patch fixes that by rolling back the logic and let the class
load handled manually in JunitShell as before.

Change-Id: Ide48419f8c49c0c95f688d613041b96b8caf5f7a
Fix NPE with invalid sourceLevel (and tests).

Fixed the testing infrastructure that was passing tests when it
should not.

Fixed a "what is essential is invisible to the eye" kind of bug
in ArgHandlerSourceLevel.

Change-Id: I9838b6a235a5961fb7e04570f12745aa6b674497
Merge remote-tracking branch 'upstream/master'