(PUP-789) Break yumrepo into a type/provider.
This work strips out all of the provider code from the type, and
creates a new ruby provider for yumrepo.
While this code still uses inifile it's been rewritten to take advantage
of the modernization of Puppet. It's now a little easier to understand
and test.
This covers: #8758, #9293, #22304 (projects.puppetlabs.com)