Fix Eclipse build error in SpecGerritTriggerHudsonTest

The Eclipse build fails with the error:

  The method configRoundtrip(FreeStyleProject) is ambiguous for the
  type SpecGerritTriggerHudsonTest

This is fixed by casting the `project` parameter to `Item` as it is
in other test cases.

Change-Id: I17d3905fd82aa638f2417e8dbcf399a7360b7650
Add UIDs for serializable classes

Serializable classes should have a UID.  Add automatically
generated UIDs.

Change-Id: Ia72679bc1dac8dd566849e94be2ced18492c383b
Implemented support of SOCKS5 and HTTP proxy for ssh connections

Underlying API JSch already supports ssh connections through SOCKS5 and
HTTP proxy. This change brings this functionaly to the plugin.

Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com>
Added GERRIT_EVENT_TYPE environment variable

As the same Jenkins job can process multiple events it should be
possible to see which event actually triggered the job. New environment
variable GERRIT_EVENT_TYPE serves this purpose. It contains type of the
event, which triggered the job.

Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com>
Throw IOException insteadof IllegalState

It seems to happen more often than expected that the connection
only gets half done. The main loop in the handler is designed to
exit on runtime exceptions so a retry will not be performed.
But with a checked exception it should just go back and retry the
connection instead.

Change-Id: Ib80893ee9cc74a7baa7ca92d5dcbf5677e7b4dad
Move SshdServer mock to a common module

This way both the events and the trigger module
can use it for testing.

Change-Id: I491f312893e5d93f1f315db314e53f88de08ad98
Adding a connection watch dog

For a yet unknown reason the ssh connection to Gerrit sometimes hangs
without disconnecting fully that the GerritHandler cannot detect.

So this adds a watch dog that does a force reconnect if nothing has
arrived on the stream-events connection for a period of time.

Change-Id: I01d16d97872e12e6e8f8af15ecd00bfc06f75341
UI changes for configuration of connection watchdog

This change adds the possibility to add configuration of
the watchdog on the gerrit-trigger part of manage Jenkins.
How many minutes to wait before timing out can be set, as well as
any exceptions to this rule, be it certain days and/or hours of the day.

Change-Id: I0ae2653693dc178a1ae7fd24611689bfb7fb8fb8
Merge branch 'i'
Merge branch 'master' of github.com:bartosh/gerrit-trigger-plugin

Conflicts:
	gerrit-events/src/main/java/com/sonyericsson/hudson/plugins/gerrit/gerritevents/GerritHandler.java