This class is functionally equivalent to the ModuleObject class that YARD uses for Ruby code. Using a new class allows us to gather YARD objects related to Puppet and separate them from the Ruby bits.