Adding GitHub Pull Request Builder Plugin

Adding the ability to use the GitHub Pull Request Builder plugin.
This plugin requires modifications on the Configure System page
of Jenkins to work properly.  If using GitHub Enterprise you must
set the token on this page, password does not work.  This change
affects the modules/triggers.py and setup.py file, adding a new
section for this plugin.  When using this plugin in the GUI the
textboxes for admin list and crontab will default to the values
stored on the main Configure System Jenkins page, I don't think
JJB can even attempt this default so I just defaulted to nothing.

Change-Id: Ib453cee269038e04f01a446378922b36307c18ce
Reviewed-on: https://review.openstack.org/24929
Reviewed-by: Jeremy Stanley <fungi@yuggoth.org>
Approved: James E. Blair <corvus@inaugust.com>
Reviewed-by: James E. Blair <corvus@inaugust.com>
Tested-by: Jenkins
Add Sonar Plugin support.

The Sonar Plugin provides both a builder and a publisher,
the later targeting Maven projects.

This commit adds support for the publisher, which is straightforward
to configure: no option is required, the plugin finds suitable
defaults by itself.

Several parameters can be provided though, which are transferred
as is to either Sonar or Maven. Analysis can also be skipped under
certain conditions.

Change-Id: I30744d0961d623cabf7c0780ab2f0d4db2cd9295
Reviewed-on: https://review.openstack.org/25073
Reviewed-by: Jeremy Stanley <fungi@yuggoth.org>
Approved: Monty Taylor <mordred@inaugust.com>
Reviewed-by: Monty Taylor <mordred@inaugust.com>
Tested-by: Jenkins