Created a new `PatchSet` class that provides an interface to patches
being gated by WMF CI.
To begin with, a static function was implemented to help with instantiation from the
parameters that Zuul provides, and an instance method for getting an SCM
mapping that the Jenkins builtin `checkout` function understands. This
allows for the following simple pattern to be used to clone a project
repo and check out the patch set currently being gated.
stage('Get patch') { checkout(PatchSet.fromZuul(params).getSCM()) }
Future functions for getting information from or manipulating a patch
set may be added to this class.
Change-Id: I1490e0f98af1556f2c6d816b8b5c04853b6b7b19